๐ด 5 Philosophers - All Fed Successfully (Classic Case)
โ
Success!
All 5 philosophers successfully ate at least once during the simulation.
Look for each philosopher's "I'm full!" message in the diagram below!
sequenceDiagram
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20ms
philosopher_3->>philosopher_3: {:mumble, "I'm hungry!"}
Note over philosopher_3,philosopher_3: t=20ms
philosopher_2->>philosopher_2: {:mumble, "I'm hungry!"}
Note over philosopher_2,philosopher_2: t=20ms
philosopher_1->>philosopher_1: {:mumble, "I'm hungry!"}
Note over philosopher_1,philosopher_1: t=20ms
philosopher_4->>philosopher_4: {:mumble, "I'm hungry!"}
Note over philosopher_4,philosopher_4: t=20ms
philosopher_0->>philosopher_0: {:mumble, "I'm hungry!"}
Note over philosopher_0,philosopher_0: t=20ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=20ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=20ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=20ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=20ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=20ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=20ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=20ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=20ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=20ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=40ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=40ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=40ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=40ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=40ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=40ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=40ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=40ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=40ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=40ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=40ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=40ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=40ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=40ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=40ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=40ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=40ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=40ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=40ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=40ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=40ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=40ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=40ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=40ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=40ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=40ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=60ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=60ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=60ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=60ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=60ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=60ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=60ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=60ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=60ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=60ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=60ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=60ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=60ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=60ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=60ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=60ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=60ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=60ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=60ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=60ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=60ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=60ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=60ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=60ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=60ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=60ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=60ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=60ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=80ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=80ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=80ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=80ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=80ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=80ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=80ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=80ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=80ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=80ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=80ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=80ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=80ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=80ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=80ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=80ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=80ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=80ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=80ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=80ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=80ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=80ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=80ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=80ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=80ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=80ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=80ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=80ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=100ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=100ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=100ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=100ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=100ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=100ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=100ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=100ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=100ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=100ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=100ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=100ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=100ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=100ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=100ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=100ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=100ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=100ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=100ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=100ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=100ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=100ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=100ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=100ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=100ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=100ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=100ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=120ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=120ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=120ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=120ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=120ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=120ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=120ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=120ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=120ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=120ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=120ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=120ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=120ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=120ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=120ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=120ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=120ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=120ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=120ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=120ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=120ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=120ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=120ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=120ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=120ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=120ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=140ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=140ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=140ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=140ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=140ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=140ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=140ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=140ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=140ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=140ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=140ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=140ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=140ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=140ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=140ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=140ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=140ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=140ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=140ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=140ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=140ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=140ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=140ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=140ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=140ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=140ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=140ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=140ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=160ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=160ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=160ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=160ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=160ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=160ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=160ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=160ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=160ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=160ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=160ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=160ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=160ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=160ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=160ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=160ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=160ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=160ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=160ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=160ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=160ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=160ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=160ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=160ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=160ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=160ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=180ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=180ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=180ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=180ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=180ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=180ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=180ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=180ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=180ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=180ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=180ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=180ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=180ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=180ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=180ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=180ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=180ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=180ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=180ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=180ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=180ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=180ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=180ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=180ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=180ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=180ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=200ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=200ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=200ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=200ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=200ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=200ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=200ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=200ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=200ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=200ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=200ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=200ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=200ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=200ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=200ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=200ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=200ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=200ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=200ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=200ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=200ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=200ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=200ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=200ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=200ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=200ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=200ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=200ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=220ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=220ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=220ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=220ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=220ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=220ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=220ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=220ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=220ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=220ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=220ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=220ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=220ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=220ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=220ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=220ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=220ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=220ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=220ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=220ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=220ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=220ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=220ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=220ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=220ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=240ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=240ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=240ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=240ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=240ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=240ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=240ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=240ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=240ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=240ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=240ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=240ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=240ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=240ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=240ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=240ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=240ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=240ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=240ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=240ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=240ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=240ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=240ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=240ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=240ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=240ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=240ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=260ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=260ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=260ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=260ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=260ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=260ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=260ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=260ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=260ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=260ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=260ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=260ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=260ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=260ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=260ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=260ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=260ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=260ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=260ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=260ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=260ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=260ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=260ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=260ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=260ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=260ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=260ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=260ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=280ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=280ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=280ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=280ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=280ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=280ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=280ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=280ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=280ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=280ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=280ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=280ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=280ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=280ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=280ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=280ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=280ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=280ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=280ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=280ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=280ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=280ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=280ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=280ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=280ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=280ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=280ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=300ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=300ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=300ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=300ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=300ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=300ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=300ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=300ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=300ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=300ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=300ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=300ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=300ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=300ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=300ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=300ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=300ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=300ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=300ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=300ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=300ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=300ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=300ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=300ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=300ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=300ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=300ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=300ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=320ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=320ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=320ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=320ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=320ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=320ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=320ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=320ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=320ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=320ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=320ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=320ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=320ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=320ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=320ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=320ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=320ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=320ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=320ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=320ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=320ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=320ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=320ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=320ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=320ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=320ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=340ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=340ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=340ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=340ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=340ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=340ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=340ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=340ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=340ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=340ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=340ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=340ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=340ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=340ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=340ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=340ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=340ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=340ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=340ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=340ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=340ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=340ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=340ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=340ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=340ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=340ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=340ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=340ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=360ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=360ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=360ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=360ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=360ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=360ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=360ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=360ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=360ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=360ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=360ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=360ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=360ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=360ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=360ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=360ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=360ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=360ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=360ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=360ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=360ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=360ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=360ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=360ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=360ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=360ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=360ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=380ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=380ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=380ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=380ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=380ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=380ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=380ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=380ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=380ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=380ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=380ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=380ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=380ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=380ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=380ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=380ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=380ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=380ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=380ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=380ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=380ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=380ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=380ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=380ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=380ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=380ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=380ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=380ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=400ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=400ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=400ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=400ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=400ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=400ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=400ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=400ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=400ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=400ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=400ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=400ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=400ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=400ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=400ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=400ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=400ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=400ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=400ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=400ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=400ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=400ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=400ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=400ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=400ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=400ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=400ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=400ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=420ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=420ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=420ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=420ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=420ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=420ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=420ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=420ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=420ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=420ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=420ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=420ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=420ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=420ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=420ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=420ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=420ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=420ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=420ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=420ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=420ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=420ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=420ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=420ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=420ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=420ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=420ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=440ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=440ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=440ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=440ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=440ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=440ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=440ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=440ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=440ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=440ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=440ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=440ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=440ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=440ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=440ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=440ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=440ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=440ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=440ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=440ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=440ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=440ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=440ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=440ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=440ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=440ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=440ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=460ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=460ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=460ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=460ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=460ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=460ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=460ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=460ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=460ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=460ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=460ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=460ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=460ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=460ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=460ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=460ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=460ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=460ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=460ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=460ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=460ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=460ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=460ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=460ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=460ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=480ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=480ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=480ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=480ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=480ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=480ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=480ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=480ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=480ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=480ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=480ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=480ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=480ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=480ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=480ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=480ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=480ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=480ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=480ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=480ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=480ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=480ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=480ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=480ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=480ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=480ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=480ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=500ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=500ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=500ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=500ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=500ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=500ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=500ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=500ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=500ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=500ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=500ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=500ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=500ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=500ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=500ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=500ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=500ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=500ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=500ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=500ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=500ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=500ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=500ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=500ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=500ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=500ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=520ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=520ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=520ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=520ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=520ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=520ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=520ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=520ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=520ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=520ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=520ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=520ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=520ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=520ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=520ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=520ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=520ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=520ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=520ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=520ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=520ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=520ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=520ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=520ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=520ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=520ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=540ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=540ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=540ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=540ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=540ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=540ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=540ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=540ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=540ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=540ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=540ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=540ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=540ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=540ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=540ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=540ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=540ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=540ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=540ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=540ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=540ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=540ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=540ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=540ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=560ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=560ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=560ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=560ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=560ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=560ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=560ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=560ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=560ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=560ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=560ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=560ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=560ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=560ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=560ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=560ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=560ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=560ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=560ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=560ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=560ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=560ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=560ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=560ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=560ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=560ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=580ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=580ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=580ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=580ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=580ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=580ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=580ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=580ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=580ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=580ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=580ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=580ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=580ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=580ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=580ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=580ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=580ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=580ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=580ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=580ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=580ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=580ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=580ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=580ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=600ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=600ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=600ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=600ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=600ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=600ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=600ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=600ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=600ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=600ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=600ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=600ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=600ms
fork_0->>philosopher_4: {:fork_granted, :fork_0}
Note over fork_0,philosopher_4: t=600ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=600ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=600ms
fork_0->>philosopher_0: {:fork_denied, :fork_0}
Note over fork_0,philosopher_0: t=600ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=600ms
philosopher_4->>philosopher_4: {:mumble, "I'm full!"}
Note over philosopher_4,philosopher_4: t=600ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=600ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=600ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=600ms
philosopher_4->>fork_0: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=600ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=600ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=620ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=620ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=620ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=620ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=620ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=620ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=620ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=620ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=620ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=620ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=620ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=620ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=620ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=620ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=620ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=620ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=620ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=620ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=620ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=620ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=620ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=620ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=620ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=620ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=620ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=640ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=640ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=640ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=640ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=640ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=640ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=640ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=640ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=640ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=640ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=640ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=640ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=640ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=640ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=640ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=640ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=640ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=640ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=640ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=640ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=640ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=640ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=640ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=640ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=640ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=660ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=660ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=660ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=660ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=660ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=660ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=660ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=660ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=660ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=660ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=660ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=660ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=660ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=660ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=660ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=660ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=660ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=660ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=660ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=660ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=660ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=660ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=660ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=660ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=660ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=660ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=660ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=660ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=680ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=680ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=680ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=680ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=680ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=680ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=680ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=680ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=680ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=680ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=680ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=680ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=680ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=680ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=680ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=680ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=680ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=680ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=680ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=680ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=680ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=680ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=680ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=680ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=680ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=680ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=700ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=700ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=700ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=700ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=700ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=700ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=700ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=700ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=700ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=700ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=700ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=700ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=700ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=700ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=700ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=700ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=700ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=700ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=700ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=700ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=700ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=700ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=700ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=700ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=720ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=720ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=720ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=720ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=720ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=720ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=720ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=720ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=720ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=720ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=720ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=720ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=720ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=720ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=720ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=720ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=720ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=720ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=720ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=720ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=720ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=720ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=720ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=720ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=720ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=720ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=720ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=740ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=740ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=740ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=740ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=740ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=740ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=740ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=740ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=740ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=740ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=740ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=740ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=740ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=740ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=740ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=740ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=740ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=740ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=740ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=740ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=740ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=740ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=740ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=740ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=740ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=740ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=740ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=760ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=760ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=760ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=760ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=760ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=760ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=760ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=760ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=760ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=760ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=760ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=760ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=760ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=760ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=760ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=760ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=760ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=760ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=760ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=760ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=760ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=760ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=760ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=760ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=760ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=760ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=760ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=780ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=780ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=780ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=780ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=780ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=780ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=780ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=780ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=780ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=780ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=780ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=780ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=780ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=780ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=780ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=780ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=780ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=780ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=780ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=780ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=780ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=780ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=780ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=780ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=780ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=780ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=780ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=800ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=800ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=800ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=800ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=800ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=800ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=800ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=800ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=800ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=800ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=800ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=800ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=800ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=800ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=800ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=800ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=800ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=800ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=800ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=800ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=800ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=800ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=800ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=800ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=800ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=800ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=800ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=820ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=820ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=820ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=820ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=820ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=820ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=820ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=820ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=820ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=820ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=820ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=820ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=820ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=820ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=820ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=820ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=820ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=820ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=820ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=820ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=820ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=820ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=820ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=820ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=820ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=820ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=820ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=840ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=840ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=840ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=840ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=840ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=840ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=840ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=840ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=840ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=840ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=840ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=840ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=840ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=840ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=840ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=840ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=840ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=840ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=840ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=840ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=840ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=840ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=840ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=840ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=840ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=840ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=840ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=840ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=860ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=860ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=860ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=860ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=860ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=860ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=860ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=860ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=860ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=860ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=860ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=860ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=860ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=860ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=860ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=860ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=860ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=860ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=860ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=860ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=860ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=860ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=860ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=860ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=860ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=860ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=860ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=880ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=880ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=880ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=880ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=880ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=880ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=880ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=880ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=880ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=880ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=880ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=880ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=880ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=880ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=880ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=880ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=880ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=880ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=880ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=880ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=880ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=880ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=880ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=880ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=880ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=880ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=880ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=880ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=900ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=900ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=900ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=900ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=900ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=900ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=900ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=900ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=900ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=900ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=900ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=900ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=900ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=900ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=900ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=900ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=900ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=900ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=900ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=900ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=900ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=900ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=900ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=900ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=900ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=900ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=900ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=920ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=920ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=920ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=920ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=920ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=920ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=920ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=920ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=920ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=920ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=920ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=920ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=920ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=920ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=920ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=920ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=920ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=920ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=920ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=920ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=920ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=920ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=920ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=920ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=920ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=920ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=940ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=940ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=940ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=940ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=940ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=940ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=940ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=940ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=940ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=940ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=940ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=940ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=940ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=940ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=940ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=940ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=940ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=940ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=940ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=940ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=940ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=940ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=940ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=940ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=940ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=940ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=940ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=940ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=960ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=960ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=960ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=960ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=960ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=960ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=960ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=960ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=960ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=960ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=960ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=960ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=960ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=960ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=960ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=960ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=960ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=960ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=960ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=960ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=960ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=960ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=960ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=960ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=960ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=960ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=960ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=960ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=980ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=980ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=980ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=980ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=980ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=980ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=980ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=980ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=980ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=980ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=980ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=980ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=980ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=980ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=980ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=980ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=980ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=980ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=980ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=980ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=980ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=980ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=980ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=980ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=980ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=980ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1000ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1000ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1000ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1000ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1000ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1000ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1000ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=1000ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=1000ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1000ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1000ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1000ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=1000ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=1000ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1000ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=1000ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=1000ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=1000ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=1000ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=1000ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=1000ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1000ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=1000ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1000ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1000ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1000ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=1000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1020ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1020ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1020ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1020ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1020ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1020ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1020ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1020ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1020ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=1020ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1020ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=1020ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=1020ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1020ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1020ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=1020ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=1020ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1020ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=1020ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=1020ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=1020ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=1020ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1020ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1020ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1020ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1020ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1040ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1040ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1040ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1040ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1040ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1040ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1040ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1040ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1040ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1040ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=1040ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1040ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=1040ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=1040ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=1040ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=1040ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=1040ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1040ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=1040ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=1040ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1040ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=1040ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=1040ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1040ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1040ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1040ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1040ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1060ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1060ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1060ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1060ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=1060ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1060ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1060ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1060ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1060ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1060ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1060ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=1060ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1060ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=1060ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=1060ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1060ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=1060ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=1060ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1060ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1060ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1060ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=1060ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=1060ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1060ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=1060ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1060ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1060ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1060ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1080ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1080ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1080ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1080ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1080ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1080ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1080ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1080ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1080ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1080ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=1080ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=1080ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=1080ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=1080ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1080ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1080ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1080ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=1080ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=1080ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=1080ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=1080ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1080ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=1080ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1080ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1080ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1080ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1080ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1100ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1100ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1100ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1100ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1100ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1100ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1100ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=1100ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1100ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1100ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1100ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=1100ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=1100ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=1100ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1100ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1100ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1100ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=1100ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=1100ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=1100ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1100ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1100ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=1100ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1100ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=1100ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1100ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1100ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1120ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1120ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1120ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1120ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1120ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1120ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=1120ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1120ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1120ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1120ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1120ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1120ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1120ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=1120ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=1120ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=1120ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=1120ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=1120ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=1120ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=1120ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1120ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1120ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=1120ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1120ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1120ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1140ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1140ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1140ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1140ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1140ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1140ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1140ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1140ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1140ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1140ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1140ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1140ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=1140ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=1140ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=1140ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1140ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=1140ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=1140ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=1140ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=1140ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=1140ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=1140ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1140ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1140ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=1140ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1140ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1140ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1140ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1160ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1160ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1160ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1160ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1160ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1160ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1160ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1160ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=1160ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=1160ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1160ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1160ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1160ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1160ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1160ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=1160ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=1160ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=1160ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=1160ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=1160ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=1160ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1160ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=1160ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1160ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1160ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1160ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1180ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1180ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1180ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1180ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1180ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1180ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=1180ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1180ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=1180ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1180ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1180ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=1180ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1180ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1180ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=1180ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=1180ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1180ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=1180ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=1180ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=1180ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=1180ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=1180ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1180ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1180ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1180ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1180ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=1180ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1200ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1200ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1200ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1200ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1200ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1200ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1200ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1200ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1200ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1200ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=1200ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1200ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=1200ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=1200ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=1200ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1200ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=1200ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=1200ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1200ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=1200ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=1200ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=1200ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1200ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1200ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1200ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1200ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1220ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1220ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1220ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1220ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1220ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1220ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1220ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1220ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1220ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=1220ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=1220ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1220ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=1220ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=1220ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=1220ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=1220ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1220ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=1220ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1220ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=1220ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1220ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=1220ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=1220ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1220ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=1220ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=1220ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1220ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1220ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1240ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1240ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1240ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1240ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1240ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=1240ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1240ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1240ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1240ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1240ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1240ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1240ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=1240ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=1240ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1240ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=1240ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1240ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=1240ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=1240ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=1240ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=1240ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=1240ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1240ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1240ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1240ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1240ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1240ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1260ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1260ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1260ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1260ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1260ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1260ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1260ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1260ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1260ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1260ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1260ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1260ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=1260ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=1260ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=1260ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=1260ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=1260ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=1260ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=1260ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=1260ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1260ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=1260ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=1260ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1260ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=1260ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1260ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1260ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=1260ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1280ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1280ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1280ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1280ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1280ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1280ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1280ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1280ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1280ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=1280ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1280ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=1280ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=1280ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1280ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=1280ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1280ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=1280ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=1280ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=1280ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=1280ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1280ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=1280ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=1280ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1280ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1280ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1280ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1280ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1300ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1300ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1300ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1300ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1300ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1300ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1300ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1300ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=1300ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1300ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1300ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1300ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=1300ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=1300ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=1300ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=1300ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1300ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1300ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=1300ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=1300ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=1300ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=1300ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1300ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1300ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=1300ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1300ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1300ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=1300ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1320ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1320ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1320ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1320ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1320ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1320ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1320ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1320ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1320ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1320ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=1320ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=1320ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=1320ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1320ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=1320ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1320ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=1320ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1320ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=1320ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=1320ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1320ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=1320ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=1320ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1320ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1320ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1320ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1340ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1340ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1340ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1340ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=1340ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1340ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1340ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1340ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=1340ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=1340ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1340ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1340ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1340ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1340ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1340ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1340ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=1340ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1340ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=1340ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1340ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=1340ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=1340ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1340ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=1340ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1340ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1340ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=1340ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=1340ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1360ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1360ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1360ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1360ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1360ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1360ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1360ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1360ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1360ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=1360ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1360ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=1360ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=1360ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1360ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=1360ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1360ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=1360ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=1360ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=1360ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=1360ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=1360ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1360ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=1360ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=1360ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1360ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1360ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1360ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=1360ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1380ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1380ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1380ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1380ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1380ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1380ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1380ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1380ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1380ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1380ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1380ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=1380ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=1380ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=1380ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=1380ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1380ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=1380ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=1380ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=1380ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=1380ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=1380ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=1380ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=1380ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1380ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1380ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1380ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1380ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=1380ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1400ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1400ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1400ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1400ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1400ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1400ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1400ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1400ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=1400ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1400ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1400ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=1400ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=1400ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1400ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1400ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=1400ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=1400ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1400ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=1400ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=1400ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=1400ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=1400ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1400ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1400ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1400ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1400ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1400ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1420ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1420ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1420ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1420ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1420ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1420ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1420ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1420ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1420ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1420ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=1420ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=1420ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=1420ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1420ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=1420ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=1420ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=1420ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=1420ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=1420ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=1420ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=1420ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1420ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=1420ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1420ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1420ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1420ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=1420ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1440ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1440ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1440ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1440ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1440ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1440ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1440ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1440ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1440ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=1440ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1440ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=1440ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=1440ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1440ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1440ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=1440ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=1440ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=1440ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=1440ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=1440ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=1440ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1440ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1440ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1440ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1440ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1460ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1460ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1460ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1460ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1460ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1460ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1460ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1460ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1460ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1460ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1460ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=1460ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=1460ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=1460ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=1460ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=1460ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=1460ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1460ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=1460ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=1460ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1460ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=1460ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1460ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=1460ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1460ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1460ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=1460ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1480ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1480ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1480ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1480ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1480ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=1480ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1480ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1480ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=1480ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1480ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1480ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1480ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1480ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=1480ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=1480ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=1480ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=1480ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1480ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=1480ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=1480ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1480ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1480ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1480ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=1480ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1480ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1480ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1480ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1500ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1500ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1500ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1500ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1500ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1500ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1500ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1500ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=1500ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1500ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1500ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1500ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1500ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=1500ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1500ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=1500ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=1500ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=1500ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=1500ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=1500ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=1500ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=1500ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1500ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1500ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1500ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1500ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1520ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1520ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1520ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1520ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1520ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1520ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1520ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1520ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=1520ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=1520ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1520ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1520ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=1520ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1520ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1520ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=1520ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=1520ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=1520ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=1520ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=1520ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=1520ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1520ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=1520ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1520ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1520ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1520ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1540ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1540ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1540ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1540ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1540ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1540ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1540ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=1540ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1540ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1540ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=1540ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=1540ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1540ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=1540ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=1540ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=1540ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1540ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1540ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1540ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=1540ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=1540ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=1540ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1540ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1540ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1540ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1560ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1560ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1560ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1560ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1560ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1560ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1560ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1560ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1560ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=1560ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1560ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1560ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=1560ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=1560ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=1560ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=1560ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1560ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=1560ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=1560ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1560ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1560ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=1560ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=1560ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=1560ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1560ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1560ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=1560ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1580ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1580ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1580ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1580ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1580ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1580ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1580ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1580ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1580ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1580ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=1580ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=1580ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1580ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=1580ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=1580ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=1580ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=1580ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1580ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=1580ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=1580ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=1580ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=1580ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1580ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1580ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=1580ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=1580ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1580ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1580ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1600ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1600ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1600ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1600ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1600ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1600ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1600ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1600ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=1600ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1600ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=1600ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1600ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=1600ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1600ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1600ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=1600ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1600ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=1600ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=1600ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=1600ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=1600ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=1600ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1600ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1600ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1600ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1600ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1620ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1620ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1620ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1620ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1620ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1620ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=1620ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1620ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=1620ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1620ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1620ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1620ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1620ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=1620ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1620ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=1620ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=1620ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=1620ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=1620ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=1620ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=1620ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=1620ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1620ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1620ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1620ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1620ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1620ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1640ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1640ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1640ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1640ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1640ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1640ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1640ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=1640ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1640ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1640ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=1640ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=1640ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1640ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1640ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=1640ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=1640ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=1640ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1640ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=1640ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=1640ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=1640ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1640ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1640ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1640ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1660ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1660ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1660ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1660ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1660ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1660ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=1660ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=1660ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=1660ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1660ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=1660ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1660ms
fork_0->>philosopher_4: {:fork_granted, :fork_0}
Note over fork_0,philosopher_4: t=1660ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1660ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=1660ms
fork_0->>philosopher_0: {:fork_denied, :fork_0}
Note over fork_0,philosopher_0: t=1660ms
philosopher_4->>philosopher_4: {:mumble, "I'm full!"}
Note over philosopher_4,philosopher_4: t=1660ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=1660ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=1660ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1660ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=1660ms
philosopher_4->>fork_0: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=1660ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1660ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=1660ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1680ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1680ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1680ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1680ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1680ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1680ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1680ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1680ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=1680ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=1680ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1680ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=1680ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1680ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1680ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1680ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=1680ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=1680ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1680ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=1680ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=1680ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=1680ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1680ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=1680ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1680ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1680ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1680ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1680ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1700ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1700ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1700ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1700ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1700ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1700ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=1700ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1700ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=1700ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1700ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1700ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1700ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=1700ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1700ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1700ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1700ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=1700ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=1700ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=1700ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=1700ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=1700ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1700ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1700ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=1700ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1700ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1700ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1700ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1720ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1720ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1720ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1720ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1720ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1720ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1720ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1720ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1720ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=1720ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=1720ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=1720ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1720ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1720ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=1720ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=1720ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=1720ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1720ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=1720ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=1720ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=1720ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1720ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1720ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1720ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1720ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1740ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1740ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1740ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1740ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1740ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1740ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1740ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=1740ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1740ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1740ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=1740ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1740ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=1740ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=1740ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1740ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=1740ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1740ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=1740ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=1740ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=1740ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=1740ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=1740ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1740ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1740ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1740ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1740ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1740ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1760ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1760ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1760ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1760ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1760ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1760ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1760ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1760ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=1760ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1760ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1760ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1760ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=1760ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=1760ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=1760ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=1760ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=1760ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=1760ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1760ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=1760ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1760ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=1760ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1760ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1760ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1760ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1780ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1780ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1780ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1780ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1780ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1780ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1780ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=1780ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=1780ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1780ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1780ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=1780ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=1780ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1780ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1780ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=1780ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=1780ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1780ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=1780ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=1780ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=1780ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=1780ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1780ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=1780ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1780ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1780ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1800ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1800ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1800ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1800ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1800ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=1800ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1800ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=1800ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1800ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1800ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1800ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=1800ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1800ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=1800ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=1800ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=1800ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1800ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=1800ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=1800ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=1800ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=1800ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1800ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1800ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=1800ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=1800ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1800ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1820ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1820ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1820ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1820ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1820ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1820ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1820ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1820ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=1820ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1820ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=1820ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1820ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=1820ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1820ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=1820ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=1820ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1820ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=1820ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=1820ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=1820ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=1820ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1820ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1820ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1820ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1820ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1840ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1840ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1840ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1840ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1840ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=1840ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1840ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1840ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1840ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1840ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1840ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=1840ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=1840ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=1840ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1840ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1840ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=1840ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=1840ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1840ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1840ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=1840ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=1840ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1840ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=1840ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1840ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1840ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1840ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1860ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1860ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1860ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1860ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1860ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1860ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1860ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1860ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1860ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=1860ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=1860ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1860ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=1860ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=1860ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1860ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1860ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1860ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=1860ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=1860ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=1860ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1860ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=1860ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=1860ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1860ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1860ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1860ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1860ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1880ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1880ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1880ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1880ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1880ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=1880ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1880ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1880ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1880ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1880ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1880ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=1880ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1880ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=1880ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=1880ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=1880ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=1880ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1880ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=1880ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=1880ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=1880ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1880ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1880ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=1880ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1880ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1880ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1880ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1900ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1900ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1900ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1900ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1900ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=1900ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1900ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1900ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1900ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1900ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1900ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=1900ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1900ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=1900ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=1900ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=1900ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1900ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=1900ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=1900ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=1900ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1900ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=1900ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1900ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1900ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1900ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1920ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1920ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1920ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1920ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1920ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1920ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1920ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1920ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1920ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=1920ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=1920ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1920ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=1920ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=1920ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1920ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1920ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1920ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=1920ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=1920ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=1920ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=1920ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=1920ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1920ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1920ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1920ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1920ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1920ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1940ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1940ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1940ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1940ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1940ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1940ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1940ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1940ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1940ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1940ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=1940ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=1940ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1940ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1940ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=1940ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=1940ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1940ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=1940ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1940ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=1940ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=1940ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=1940ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1940ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1940ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1940ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=1940ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1940ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1940ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1960ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1960ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1960ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1960ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1960ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1960ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1960ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1960ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1960ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=1960ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1960ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=1960ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=1960ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1960ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1960ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=1960ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=1960ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=1960ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=1960ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=1960ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=1960ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=1960ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1960ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1960ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1960ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=1960ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1960ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=1980ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=1980ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=1980ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=1980ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=1980ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1980ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=1980ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1980ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=1980ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=1980ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=1980ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1980ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=1980ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=1980ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=1980ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=1980ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1980ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=1980ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=1980ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=1980ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=1980ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=1980ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=1980ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=1980ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=1980ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=1980ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2000ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2000ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2000ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2000ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2000ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=2000ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2000ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2000ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2000ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2000ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2000ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=2000ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2000ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=2000ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=2000ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=2000ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2000ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2000ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=2000ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=2000ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=2000ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2000ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2000ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=2000ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2000ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2000ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2020ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2020ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2020ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2020ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2020ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2020ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2020ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2020ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2020ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=2020ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2020ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=2020ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=2020ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2020ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2020ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2020ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=2020ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2020ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=2020ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=2020ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=2020ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=2020ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2020ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=2020ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2020ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2020ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2020ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2020ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2040ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2040ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2040ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=2040ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2040ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2040ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2040ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2040ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2040ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=2040ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2040ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2040ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2040ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=2040ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=2040ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=2040ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2040ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=2040ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2040ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2040ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=2040ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=2040ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2040ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2040ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=2040ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2040ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2060ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2060ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2060ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2060ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2060ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2060ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2060ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=2060ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2060ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2060ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2060ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=2060ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=2060ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2060ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=2060ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=2060ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=2060ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2060ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2060ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2060ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=2060ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=2060ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=2060ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2060ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2060ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2060ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2080ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2080ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2080ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2080ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2080ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2080ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2080ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2080ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2080ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=2080ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=2080ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2080ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2080ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2080ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=2080ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=2080ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=2080ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2080ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=2080ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2080ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2080ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=2080ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=2080ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2080ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=2080ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2080ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2080ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2100ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2100ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2100ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2100ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2100ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2100ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2100ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2100ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2100ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=2100ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2100ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=2100ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2100ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=2100ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2100ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=2100ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=2100ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2100ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=2100ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=2100ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=2100ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=2100ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2100ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2100ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2100ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=2100ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2100ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2100ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2120ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2120ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2120ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2120ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2120ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2120ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2120ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2120ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2120ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2120ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=2120ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=2120ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2120ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=2120ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2120ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=2120ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=2120ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2120ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=2120ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=2120ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=2120ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=2120ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=2120ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2120ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2120ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2120ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2120ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2120ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2140ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2140ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2140ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2140ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2140ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2140ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2140ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2140ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=2140ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2140ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2140ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=2140ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2140ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2140ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=2140ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2140ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=2140ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2140ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=2140ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=2140ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=2140ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=2140ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=2140ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2140ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2140ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2140ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2140ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2140ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2160ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2160ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2160ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2160ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2160ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2160ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2160ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2160ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2160ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2160ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=2160ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=2160ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=2160ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2160ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=2160ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=2160ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2160ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2160ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2160ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=2160ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=2160ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=2160ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2160ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2160ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=2160ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2160ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=2160ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2160ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=2160ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2160ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2160ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2180ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2180ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2180ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2180ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2180ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2180ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2180ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2180ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2180ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=2180ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2180ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=2180ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=2180ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2180ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=2180ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=2180ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=2180ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2180ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=2180ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=2180ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=2180ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2180ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2180ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2180ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2180ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2200ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2200ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2200ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2200ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2200ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2200ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2200ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2200ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2200ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2200ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=2200ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=2200ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2200ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=2200ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2200ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=2200ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2200ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2200ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=2200ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=2200ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=2200ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=2200ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=2200ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2200ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2200ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2200ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2200ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2200ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2220ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2220ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2220ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2220ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=2220ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2220ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2220ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2220ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2220ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2220ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2220ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=2220ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2220ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=2220ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=2220ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2220ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=2220ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=2220ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2220ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=2220ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2220ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=2220ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2220ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=2220ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2220ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2220ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2220ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2240ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2240ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2240ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2240ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2240ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2240ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2240ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2240ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2240ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=2240ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2240ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=2240ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=2240ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2240ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=2240ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2240ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=2240ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2240ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=2240ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=2240ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=2240ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=2240ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2240ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2240ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2240ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2240ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2260ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2260ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2260ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2260ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2260ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2260ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2260ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2260ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=2260ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2260ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2260ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2260ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=2260ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2260ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=2260ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2260ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=2260ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2260ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=2260ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=2260ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=2260ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2260ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=2260ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=2260ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2260ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2260ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2260ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2260ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2280ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2280ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2280ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2280ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2280ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2280ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2280ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2280ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2280ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2280ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=2280ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=2280ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=2280ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=2280ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=2280ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2280ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2280ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=2280ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2280ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=2280ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2280ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=2280ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=2280ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=2280ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2280ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2280ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2280ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2280ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2300ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2300ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2300ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2300ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2300ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2300ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2300ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2300ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=2300ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2300ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2300ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2300ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=2300ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2300ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=2300ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2300ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=2300ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=2300ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=2300ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=2300ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=2300ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=2300ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2300ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2300ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2300ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2300ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2300ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2320ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2320ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2320ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2320ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2320ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2320ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2320ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2320ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=2320ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2320ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=2320ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2320ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=2320ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2320ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2320ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=2320ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=2320ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=2320ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=2320ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=2320ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2320ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=2320ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2320ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2320ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2320ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2340ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2340ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2340ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2340ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=2340ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2340ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2340ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2340ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2340ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2340ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2340ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=2340ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2340ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=2340ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=2340ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=2340ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=2340ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2340ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2340ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2340ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=2340ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2340ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=2340ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=2340ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2340ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2340ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2360ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2360ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2360ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2360ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2360ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2360ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2360ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2360ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=2360ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=2360ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2360ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=2360ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=2360ms
fork_0->>philosopher_4: {:fork_granted, :fork_0}
Note over fork_0,philosopher_4: t=2360ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=2360ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2360ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2360ms
philosopher_4->>philosopher_4: {:mumble, "I'm full!"}
Note over philosopher_4,philosopher_4: t=2360ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=2360ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2360ms
fork_0->>philosopher_0: {:fork_denied, :fork_0}
Note over fork_0,philosopher_0: t=2360ms
philosopher_4->>fork_0: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=2360ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=2360ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2360ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2360ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2380ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2380ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2380ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2380ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2380ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2380ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2380ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2380ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2380ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2380ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2380ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2380ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=2380ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=2380ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=2380ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=2380ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=2380ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=2380ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2380ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=2380ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2380ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=2380ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2380ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=2380ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2380ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=2380ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2380ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2380ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2400ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2400ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2400ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2400ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2400ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2400ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2400ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2400ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2400ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=2400ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2400ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=2400ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=2400ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2400ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2400ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=2400ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=2400ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=2400ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=2400ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=2400ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=2400ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2400ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2400ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2400ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2420ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2420ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2420ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2420ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2420ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2420ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2420ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2420ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=2420ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2420ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=2420ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=2420ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=2420ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2420ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=2420ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=2420ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2420ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2420ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2420ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=2420ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=2420ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=2420ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=2420ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2420ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2420ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2420ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2420ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2440ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2440ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2440ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2440ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2440ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2440ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2440ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=2440ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2440ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2440ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=2440ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=2440ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2440ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=2440ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2440ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=2440ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=2440ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=2440ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2440ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2440ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=2440ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2440ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2440ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=2440ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2440ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2460ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2460ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2460ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2460ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2460ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2460ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=2460ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2460ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2460ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2460ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2460ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2460ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2460ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=2460ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=2460ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=2460ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2460ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=2460ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=2460ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=2460ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2460ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=2460ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2460ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2460ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=2460ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2460ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2460ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2480ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2480ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2480ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2480ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2480ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2480ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2480ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2480ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2480ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=2480ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=2480ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=2480ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2480ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=2480ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2480ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2480ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2480ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=2480ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=2480ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=2480ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=2480ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=2480ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2480ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2480ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2480ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2480ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2480ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2500ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2500ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2500ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2500ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2500ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2500ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2500ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2500ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2500ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2500ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=2500ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=2500ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2500ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=2500ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=2500ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2500ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=2500ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=2500ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2500ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=2500ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=2500ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=2500ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=2500ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2500ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2500ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2500ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2500ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2500ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2520ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2520ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2520ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2520ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2520ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2520ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2520ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2520ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=2520ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2520ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=2520ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2520ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2520ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=2520ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=2520ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2520ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=2520ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=2520ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2520ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=2520ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2520ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=2520ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=2520ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2520ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2520ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2520ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2520ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2540ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2540ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2540ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2540ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2540ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2540ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2540ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2540ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2540ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2540ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=2540ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=2540ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=2540ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2540ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=2540ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=2540ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2540ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=2540ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2540ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=2540ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2540ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=2540ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=2540ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2540ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=2540ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2540ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2540ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2540ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2560ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2560ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2560ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2560ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2560ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2560ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2560ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2560ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2560ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=2560ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2560ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=2560ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=2560ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2560ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2560ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2560ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=2560ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=2560ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=2560ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=2560ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=2560ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=2560ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2560ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2560ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2560ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2560ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2580ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2580ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2580ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2580ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2580ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2580ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2580ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=2580ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2580ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2580ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2580ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=2580ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=2580ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=2580ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2580ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=2580ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2580ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=2580ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=2580ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=2580ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2580ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=2580ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2580ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2580ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=2580ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2580ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2600ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2600ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2600ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2600ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2600ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=2600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2600ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2600ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2600ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2600ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2600ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2600ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=2600ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2600ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=2600ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=2600ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=2600ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=2600ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2600ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2600ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2600ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=2600ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=2600ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2600ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=2600ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2600ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2600ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2600ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2620ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2620ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2620ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2620ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2620ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2620ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2620ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2620ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2620ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=2620ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=2620ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2620ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=2620ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=2620ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=2620ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2620ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2620ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=2620ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=2620ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2620ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=2620ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=2620ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2620ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=2620ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2620ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2620ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2620ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2640ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2640ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2640ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2640ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2640ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2640ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2640ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2640ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2640ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2640ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2640ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=2640ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=2640ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=2640ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=2640ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=2640ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2640ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=2640ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2640ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2640ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=2640ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2640ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=2640ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=2640ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2640ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2640ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2660ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2660ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2660ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2660ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2660ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2660ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=2660ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2660ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2660ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2660ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2660ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2660ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=2660ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=2660ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=2660ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=2660ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=2660ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=2660ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2660ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=2660ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2660ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=2660ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2660ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2660ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2660ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2680ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2680ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2680ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2680ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2680ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=2680ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2680ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2680ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2680ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2680ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2680ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=2680ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2680ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=2680ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=2680ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=2680ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2680ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2680ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=2680ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=2680ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2680ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=2680ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2680ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2680ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=2680ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2680ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2700ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2700ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2700ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2700ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2700ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2700ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2700ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2700ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=2700ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2700ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2700ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=2700ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=2700ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2700ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=2700ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2700ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=2700ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=2700ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=2700ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=2700ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=2700ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2700ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2700ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=2700ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2700ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2700ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2700ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2720ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2720ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2720ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2720ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2720ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2720ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2720ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2720ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2720ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2720ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=2720ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2720ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=2720ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=2720ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=2720ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2720ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=2720ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2720ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=2720ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=2720ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2720ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=2720ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=2720ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2720ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2720ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2720ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2740ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2740ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2740ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2740ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2740ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2740ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2740ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2740ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2740ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=2740ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2740ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=2740ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2740ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=2740ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2740ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=2740ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2740ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=2740ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=2740ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=2740ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=2740ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2740ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=2740ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2740ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=2740ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2740ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2740ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2740ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2760ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2760ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2760ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2760ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2760ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2760ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2760ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2760ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2760ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=2760ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=2760ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2760ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=2760ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2760ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=2760ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2760ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2760ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=2760ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=2760ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=2760ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=2760ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=2760ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2760ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2760ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2760ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2760ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2760ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2780ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2780ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2780ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2780ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2780ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=2780ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2780ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2780ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2780ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2780ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2780ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=2780ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=2780ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=2780ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2780ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=2780ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=2780ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2780ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=2780ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=2780ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=2780ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2780ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2780ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2780ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2780ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2800ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2800ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2800ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2800ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2800ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2800ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2800ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2800ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2800ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=2800ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2800ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=2800ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2800ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=2800ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=2800ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=2800ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=2800ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2800ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=2800ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=2800ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=2800ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2800ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2800ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2800ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=2800ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2800ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2800ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2820ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2820ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2820ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2820ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2820ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2820ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=2820ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2820ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2820ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2820ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2820ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2820ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=2820ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2820ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=2820ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=2820ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=2820ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=2820ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2820ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=2820ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=2820ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=2820ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2820ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2820ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=2820ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2820ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2820ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2820ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2840ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2840ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2840ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2840ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2840ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2840ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2840ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2840ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2840ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=2840ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=2840ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=2840ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2840ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2840ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=2840ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2840ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=2840ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2840ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=2840ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=2840ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=2840ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=2840ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2840ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2840ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2840ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2840ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2840ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2860ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2860ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2860ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2860ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2860ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2860ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=2860ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2860ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2860ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2860ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2860ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2860ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=2860ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=2860ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=2860ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=2860ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2860ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=2860ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=2860ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=2860ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2860ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=2860ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2860ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2860ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2860ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2880ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2880ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2880ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2880ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2880ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2880ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2880ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2880ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=2880ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2880ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=2880ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=2880ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2880ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2880ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2880ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=2880ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=2880ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2880ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=2880ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=2880ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2880ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=2880ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2880ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=2880ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2880ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2880ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2880ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2900ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2900ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2900ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2900ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2900ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2900ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2900ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2900ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2900ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=2900ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2900ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=2900ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=2900ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2900ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=2900ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2900ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=2900ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=2900ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=2900ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=2900ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=2900ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=2900ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2900ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2900ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2900ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2900ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2920ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2920ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2920ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2920ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2920ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=2920ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2920ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2920ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2920ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2920ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2920ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2920ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=2920ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=2920ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=2920ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=2920ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2920ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2920ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=2920ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=2920ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=2920ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2920ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=2920ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2920ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=2920ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2920ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2920ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2940ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2940ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2940ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2940ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2940ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2940ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2940ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2940ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2940ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=2940ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2940ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=2940ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2940ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=2940ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=2940ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=2940ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2940ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2940ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=2940ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2940ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=2940ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=2940ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=2940ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2940ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2940ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2940ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2960ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2960ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2960ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2960ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2960ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2960ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2960ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=2960ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=2960ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2960ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2960ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2960ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2960ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2960ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2960ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=2960ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=2960ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=2960ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=2960ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=2960ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2960ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2960ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=2960ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=2960ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2960ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2960ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2960ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=2980ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=2980ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=2980ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=2980ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=2980ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2980ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2980ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=2980ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=2980ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2980ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=2980ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=2980ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=2980ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=2980ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=2980ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2980ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2980ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=2980ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=2980ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=2980ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=2980ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=2980ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=2980ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=2980ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=2980ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=2980ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=2980ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=2980ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3000ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3000ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3000ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3000ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3000ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3000ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3000ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3000ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3000ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=3000ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3000ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=3000ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=3000ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3000ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=3000ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=3000ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3000ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3000ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=3000ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=3000ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3000ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3000ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=3000ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3000ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3000ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3000ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3000ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3000ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3020ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3020ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3020ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3020ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3020ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3020ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3020ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=3020ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3020ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=3020ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3020ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3020ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=3020ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3020ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=3020ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=3020ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=3020ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3020ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=3020ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=3020ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3020ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3020ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=3020ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3020ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=3020ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3020ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=3020ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3020ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3040ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3040ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3040ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3040ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3040ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3040ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3040ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3040ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3040ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3040ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=3040ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=3040ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3040ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=3040ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=3040ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=3040ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3040ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=3040ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3040ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=3040ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=3040ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3040ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3040ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3040ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3040ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3060ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3060ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3060ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3060ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3060ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3060ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3060ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3060ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3060ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3060ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=3060ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=3060ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=3060ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3060ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3060ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=3060ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3060ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3060ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=3060ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3060ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=3060ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=3060ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3060ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3060ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3060ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3060ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3060ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3060ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3080ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3080ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3080ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3080ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3080ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3080ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3080ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3080ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3080ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=3080ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3080ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=3080ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=3080ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=3080ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3080ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3080ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=3080ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=3080ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=3080ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=3080ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=3080ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3080ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=3080ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3080ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3080ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=3080ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3100ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3100ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3100ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3100ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3100ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3100ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3100ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3100ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3100ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=3100ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=3100ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=3100ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=3100ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3100ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=3100ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3100ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3100ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=3100ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=3100ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3100ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3100ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=3100ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3100ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3100ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3100ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3100ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3120ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3120ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3120ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3120ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3120ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3120ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3120ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3120ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3120ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3120ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=3120ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=3120ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=3120ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=3120ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3120ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3120ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3120ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3120ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=3120ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=3120ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3120ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=3120ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3120ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3120ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3120ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3120ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3140ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3140ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3140ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3140ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3140ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3140ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3140ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3140ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=3140ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3140ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3140ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=3140ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=3140ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3140ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=3140ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3140ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=3140ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=3140ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3140ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=3140ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3140ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=3140ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3140ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3140ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3140ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3140ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3140ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3140ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3160ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3160ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3160ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3160ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3160ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3160ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3160ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3160ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3160ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=3160ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3160ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=3160ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=3160ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3160ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3160ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=3160ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=3160ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3160ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=3160ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=3160ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3160ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=3160ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3160ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3160ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3160ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3160ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3160ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3160ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3180ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3180ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3180ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3180ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3180ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3180ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3180ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3180ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3180ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3180ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3180ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=3180ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=3180ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3180ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=3180ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3180ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=3180ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=3180ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=3180ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3180ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3180ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=3180ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=3180ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3180ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3180ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3200ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3200ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3200ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3200ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3200ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3200ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3200ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3200ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3200ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=3200ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3200ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3200ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3200ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=3200ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=3200ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=3200ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=3200ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3200ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3200ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=3200ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=3200ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3200ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3200ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3200ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=3200ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3200ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3200ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3200ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3220ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3220ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3220ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3220ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3220ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3220ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3220ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=3220ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3220ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3220ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=3220ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3220ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3220ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=3220ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=3220ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=3220ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3220ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=3220ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=3220ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=3220ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=3220ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3220ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3220ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=3220ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3220ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3220ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=3220ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3240ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3240ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3240ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3240ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3240ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3240ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3240ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3240ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=3240ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=3240ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3240ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3240ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=3240ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=3240ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3240ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=3240ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=3240ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=3240ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3240ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3240ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3240ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=3240ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3240ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3240ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3240ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3260ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3260ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3260ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3260ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3260ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3260ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3260ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3260ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3260ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3260ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=3260ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3260ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3260ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=3260ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3260ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=3260ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=3260ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3260ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=3260ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=3260ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3260ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3260ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3260ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3260ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3260ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=3260ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3260ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3260ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3280ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3280ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3280ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3280ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3280ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3280ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3280ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3280ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3280ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3280ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=3280ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=3280ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=3280ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3280ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=3280ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3280ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3280ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3280ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3280ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=3280ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3280ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=3280ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3280ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=3280ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3280ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3280ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3280ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3300ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3300ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3300ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3300ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3300ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3300ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3300ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3300ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3300ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3300ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=3300ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=3300ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=3300ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=3300ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3300ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3300ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=3300ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3300ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=3300ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3300ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=3300ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3300ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=3300ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3300ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3300ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3300ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3300ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3320ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3320ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3320ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3320ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3320ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3320ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3320ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3320ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3320ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=3320ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3320ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=3320ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=3320ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=3320ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3320ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3320ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=3320ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=3320ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=3320ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=3320ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=3320ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=3320ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3320ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3320ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3320ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=3320ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3320ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3340ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3340ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3340ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3340ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3340ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3340ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=3340ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3340ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3340ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3340ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3340ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3340ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=3340ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3340ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=3340ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=3340ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=3340ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=3340ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=3340ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3340ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=3340ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3340ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3340ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3340ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3340ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3340ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3340ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3340ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3360ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3360ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3360ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3360ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3360ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3360ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3360ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=3360ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3360ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=3360ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=3360ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3360ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3360ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3360ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=3360ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3360ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3360ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=3360ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=3360ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3360ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3360ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=3360ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3360ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=3360ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3360ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3360ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3360ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3360ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3380ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3380ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3380ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3380ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3380ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3380ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3380ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3380ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3380ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=3380ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3380ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=3380ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=3380ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=3380ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3380ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=3380ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=3380ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3380ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=3380ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=3380ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=3380ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3380ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=3380ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3380ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3380ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=3380ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3400ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3400ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3400ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3400ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3400ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3400ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3400ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3400ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=3400ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3400ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=3400ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3400ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3400ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=3400ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=3400ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3400ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=3400ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3400ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=3400ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3400ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3400ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=3400ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3400ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3400ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3400ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3400ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3400ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3420ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3420ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3420ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3420ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3420ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3420ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3420ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3420ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=3420ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3420ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=3420ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=3420ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=3420ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=3420ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3420ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3420ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3420ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=3420ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=3420ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=3420ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=3420ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=3420ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3420ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3420ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3420ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=3420ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3420ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3440ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3440ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3440ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3440ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3440ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3440ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3440ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3440ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3440ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3440ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=3440ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3440ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=3440ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=3440ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3440ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=3440ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3440ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3440ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=3440ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=3440ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3440ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3440ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=3440ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3440ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=3440ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3440ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3440ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3460ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3460ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3460ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3460ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3460ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3460ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=3460ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3460ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3460ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3460ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3460ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3460ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=3460ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=3460ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=3460ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=3460ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3460ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=3460ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=3460ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3460ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3460ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=3460ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3460ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3460ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3460ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3460ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3460ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3480ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3480ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3480ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3480ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3480ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3480ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3480ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3480ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3480ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=3480ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=3480ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=3480ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3480ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3480ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=3480ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=3480ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3480ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3480ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=3480ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3480ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=3480ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3480ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3480ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3480ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3480ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3480ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3480ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3500ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3500ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3500ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3500ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3500ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3500ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3500ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3500ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=3500ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3500ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3500ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=3500ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=3500ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=3500ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=3500ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3500ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3500ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=3500ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=3500ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3500ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=3500ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=3500ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=3500ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3500ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3500ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=3500ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3500ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3500ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3520ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3520ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3520ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3520ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3520ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3520ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3520ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3520ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3520ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3520ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3520ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3520ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=3520ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3520ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=3520ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3520ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=3520ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=3520ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3520ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=3520ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3520ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=3520ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3520ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=3520ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=3520ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3520ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3520ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3540ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3540ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3540ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3540ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3540ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3540ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3540ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3540ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3540ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3540ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=3540ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3540ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=3540ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=3540ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=3540ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3540ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=3540ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=3540ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=3540ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=3540ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3540ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3540ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3540ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3540ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3540ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3560ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3560ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3560ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3560ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3560ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3560ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3560ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3560ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=3560ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3560ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=3560ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3560ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=3560ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3560ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=3560ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=3560ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3560ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3560ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=3560ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=3560ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3560ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3560ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3560ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3560ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3560ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3560ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3560ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3580ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3580ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3580ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3580ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3580ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3580ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3580ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=3580ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3580ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3580ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=3580ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=3580ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=3580ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=3580ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3580ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=3580ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=3580ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3580ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=3580ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3580ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=3580ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=3580ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3580ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3580ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=3580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3600ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3600ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3600ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3600ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3600ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3600ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3600ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=3600ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3600ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3600ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3600ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=3600ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3600ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3600ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=3600ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=3600ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3600ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=3600ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3600ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3600ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=3600ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=3600ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3600ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3600ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3600ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3600ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3600ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3620ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3620ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3620ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3620ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3620ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=3620ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3620ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3620ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3620ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3620ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3620ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=3620ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=3620ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=3620ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3620ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=3620ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=3620ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=3620ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3620ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3620ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3620ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3620ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=3620ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3620ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3620ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3620ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3620ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3640ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3640ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3640ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3640ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3640ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3640ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3640ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3640ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3640ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3640ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3640ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=3640ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3640ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=3640ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3640ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=3640ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3640ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3640ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=3640ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3640ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=3640ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=3640ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3640ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=3640ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3640ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3640ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3640ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3660ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3660ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3660ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3660ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3660ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3660ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=3660ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3660ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3660ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3660ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3660ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3660ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=3660ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=3660ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=3660ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3660ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=3660ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=3660ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=3660ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3660ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3660ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=3660ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3660ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3660ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3660ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3660ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3660ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3660ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3680ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3680ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3680ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3680ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3680ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3680ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3680ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3680ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3680ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3680ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=3680ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=3680ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=3680ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3680ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=3680ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3680ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=3680ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=3680ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3680ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=3680ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=3680ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3680ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3680ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3680ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3680ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3680ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3700ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3700ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3700ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3700ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3700ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3700ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3700ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3700ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3700ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=3700ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3700ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=3700ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=3700ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=3700ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=3700ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3700ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=3700ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=3700ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3700ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3700ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=3700ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3700ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3700ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3700ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3720ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3720ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3720ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3720ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3720ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3720ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3720ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3720ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3720ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=3720ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=3720ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3720ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=3720ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=3720ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3720ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3720ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3720ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=3720ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3720ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3720ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=3720ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=3720ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3720ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3720ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3720ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3720ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3720ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3740ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3740ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3740ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3740ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3740ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3740ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3740ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3740ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3740ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=3740ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=3740ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3740ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=3740ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=3740ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3740ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=3740ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=3740ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3740ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=3740ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=3740ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3740ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3740ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3740ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3740ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3740ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3760ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3760ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3760ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3760ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3760ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3760ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3760ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=3760ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3760ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3760ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3760ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=3760ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=3760ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3760ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=3760ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=3760ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=3760ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3760ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3760ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3760ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=3760ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3760ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=3760ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3760ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3760ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3760ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3760ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3760ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3780ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3780ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3780ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3780ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3780ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3780ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3780ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3780ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3780ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3780ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=3780ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=3780ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3780ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=3780ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=3780ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=3780ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3780ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3780ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=3780ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=3780ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3780ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=3780ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3780ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3780ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3780ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3780ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3780ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3800ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3800ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3800ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3800ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3800ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3800ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3800ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3800ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=3800ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3800ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3800ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=3800ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=3800ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=3800ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3800ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=3800ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3800ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=3800ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3800ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=3800ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3800ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=3800ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3800ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3800ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3800ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3800ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3800ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3800ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3820ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3820ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3820ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3820ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3820ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3820ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3820ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3820ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3820ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3820ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=3820ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=3820ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=3820ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=3820ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3820ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3820ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=3820ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=3820ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=3820ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=3820ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=3820ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3820ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=3820ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3820ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=3820ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3820ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3820ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3840ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3840ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3840ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3840ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3840ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3840ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3840ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3840ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3840ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=3840ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=3840ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=3840ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3840ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=3840ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3840ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=3840ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3840ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=3840ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=3840ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=3840ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=3840ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3840ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=3840ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3840ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3840ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3840ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=3840ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3860ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3860ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3860ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3860ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3860ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3860ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=3860ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3860ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3860ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3860ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3860ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3860ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=3860ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3860ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=3860ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=3860ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=3860ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=3860ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3860ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=3860ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=3860ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3860ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3860ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3860ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3860ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3860ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3880ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3880ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3880ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3880ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3880ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3880ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3880ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3880ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3880ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3880ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=3880ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=3880ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=3880ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3880ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=3880ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3880ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3880ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=3880ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3880ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=3880ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=3880ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3880ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3880ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3880ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3880ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3880ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3880ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3900ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3900ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3900ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3900ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3900ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3900ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3900ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3900ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3900ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=3900ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3900ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3900ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3900ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=3900ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=3900ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3900ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=3900ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3900ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=3900ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3900ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=3900ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=3900ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3900ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=3900ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=3900ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3900ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=3900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3920ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3920ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3920ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3920ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3920ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3920ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3920ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3920ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3920ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=3920ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=3920ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3920ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=3920ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3920ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=3920ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3920ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=3920ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=3920ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3920ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=3920ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=3920ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3920ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3920ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3920ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3920ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3920ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3920ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3940ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3940ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3940ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3940ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3940ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3940ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3940ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3940ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3940ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3940ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3940ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=3940ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=3940ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=3940ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3940ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=3940ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=3940ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3940ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=3940ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=3940ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3940ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3940ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=3940ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3940ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3940ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3940ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3960ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3960ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3960ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3960ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3960ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3960ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3960ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=3960ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3960ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3960ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=3960ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3960ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3960ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=3960ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=3960ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3960ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=3960ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=3960ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=3960ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3960ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=3960ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3960ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3960ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3960ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3960ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3960ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=3980ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=3980ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=3980ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=3980ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=3980ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3980ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=3980ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3980ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3980ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=3980ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=3980ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=3980ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=3980ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=3980ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=3980ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=3980ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3980ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3980ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=3980ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=3980ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=3980ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=3980ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=3980ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=3980ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=3980ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=3980ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=3980ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=3980ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4000ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4000ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4000ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4000ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=4000ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4000ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4000ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4000ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=4000ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4000ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4000ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4000ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4000ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=4000ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=4000ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=4000ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=4000ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=4000ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=4000ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4000ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4000ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4000ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=4000ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=4000ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=4000ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4000ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4000ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4020ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4020ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4020ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4020ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4020ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4020ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4020ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4020ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=4020ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4020ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4020ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4020ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=4020ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=4020ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4020ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=4020ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4020ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=4020ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=4020ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=4020ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4020ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4020ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4020ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4020ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4020ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4020ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4020ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4020ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4040ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4040ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4040ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4040ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4040ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4040ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4040ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4040ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4040ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=4040ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=4040ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4040ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4040ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=4040ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=4040ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4040ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=4040ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4040ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=4040ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=4040ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4040ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4040ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4040ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4040ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4040ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4040ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4060ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4060ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4060ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4060ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4060ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4060ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4060ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4060ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4060ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4060ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=4060ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=4060ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4060ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=4060ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=4060ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=4060ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4060ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4060ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=4060ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4060ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4060ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4060ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4060ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=4060ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=4060ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4060ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4060ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4060ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4080ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4080ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4080ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4080ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4080ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4080ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4080ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4080ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4080ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4080ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=4080ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4080ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=4080ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=4080ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4080ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=4080ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=4080ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4080ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4080ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=4080ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=4080ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4080ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4080ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=4080ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4080ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4080ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4080ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4100ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4100ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4100ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4100ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4100ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4100ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4100ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4100ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4100ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4100ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=4100ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=4100ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=4100ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=4100ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4100ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4100ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=4100ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4100ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4100ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=4100ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4100ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4100ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=4100ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4100ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4100ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4100ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4100ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4100ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4120ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4120ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4120ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4120ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4120ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4120ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4120ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4120ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4120ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=4120ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4120ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=4120ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=4120ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=4120ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=4120ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4120ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=4120ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=4120ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=4120ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=4120ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=4120ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4120ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4120ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4120ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=4120ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4140ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4140ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4140ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4140ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4140ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4140ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4140ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4140ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4140ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=4140ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4140ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4140ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4140ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=4140ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=4140ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4140ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=4140ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4140ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=4140ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=4140ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=4140ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4140ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=4140ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4140ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4140ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4140ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4140ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4140ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4160ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4160ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4160ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4160ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4160ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4160ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4160ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4160ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4160ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4160ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4160ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=4160ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=4160ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=4160ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=4160ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4160ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=4160ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=4160ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4160ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=4160ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=4160ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4160ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4160ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4160ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4160ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4160ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4180ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4180ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4180ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4180ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4180ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4180ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=4180ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4180ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4180ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4180ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4180ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=4180ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4180ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=4180ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=4180ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=4180ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=4180ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4180ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=4180ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=4180ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=4180ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4180ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4180ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=4180ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4180ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4180ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=4180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4200ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4200ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4200ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4200ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4200ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4200ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4200ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4200ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4200ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=4200ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4200ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4200ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=4200ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4200ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=4200ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4200ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=4200ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=4200ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=4200ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4200ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=4200ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4200ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4200ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=4200ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4200ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4200ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4200ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4200ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4220ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4220ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4220ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4220ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4220ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4220ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4220ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4220ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4220ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=4220ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=4220ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4220ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=4220ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=4220ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=4220ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=4220ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=4220ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4220ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=4220ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=4220ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=4220ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4220ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4220ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4220ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=4220ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4240ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4240ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4240ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4240ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4240ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4240ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4240ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4240ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4240ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4240ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=4240ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=4240ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4240ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=4240ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=4240ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=4240ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4240ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4240ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=4240ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=4240ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4240ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=4240ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4240ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4240ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4240ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4240ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4240ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4260ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4260ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4260ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4260ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4260ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4260ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4260ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4260ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4260ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=4260ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4260ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=4260ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=4260ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4260ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=4260ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=4260ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=4260ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=4260ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4260ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4260ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=4260ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=4260ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=4260ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4260ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4260ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=4260ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4280ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4280ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4280ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4280ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4280ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4280ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=4280ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4280ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4280ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4280ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=4280ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4280ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=4280ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=4280ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=4280ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4280ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=4280ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4280ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=4280ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4280ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4280ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=4280ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4280ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4280ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4280ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4280ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4280ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4300ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4300ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4300ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4300ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4300ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4300ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=4300ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4300ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=4300ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4300ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4300ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=4300ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=4300ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=4300ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4300ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4300ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4300ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4300ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4300ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=4300ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4300ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=4300ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4300ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=4300ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4300ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=4300ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4300ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4300ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4300ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4320ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4320ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4320ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4320ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4320ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4320ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4320ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4320ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4320ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=4320ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=4320ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=4320ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=4320ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4320ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4320ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4320ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4320ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=4320ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=4320ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4320ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=4320ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4320ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4320ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4320ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4320ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4320ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4320ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4340ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4340ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4340ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4340ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4340ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4340ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4340ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4340ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4340ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4340ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=4340ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=4340ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=4340ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4340ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4340ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=4340ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4340ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4340ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4340ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=4340ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4340ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=4340ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=4340ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4340ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4340ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4340ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4340ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4340ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4360ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4360ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4360ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4360ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4360ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4360ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4360ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4360ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4360ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4360ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4360ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=4360ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=4360ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=4360ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4360ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=4360ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=4360ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=4360ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4360ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=4360ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4360ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=4360ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4360ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4360ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4360ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4380ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4380ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4380ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4380ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4380ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4380ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4380ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4380ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4380ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4380ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=4380ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=4380ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=4380ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=4380ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4380ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=4380ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=4380ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4380ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=4380ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=4380ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4380ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=4380ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=4380ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4380ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4380ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=4380ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4400ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4400ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4400ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4400ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4400ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4400ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4400ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4400ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4400ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4400ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=4400ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4400ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=4400ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=4400ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=4400ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=4400ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4400ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=4400ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=4400ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4400ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4400ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=4400ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4400ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4400ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4400ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4400ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4420ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4420ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4420ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4420ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4420ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4420ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4420ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4420ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4420ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=4420ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4420ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=4420ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=4420ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=4420ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4420ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4420ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=4420ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4420ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=4420ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=4420ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4420ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=4420ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4420ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4420ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4420ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4420ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4420ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4440ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4440ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4440ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4440ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4440ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4440ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4440ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4440ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4440ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=4440ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4440ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=4440ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=4440ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4440ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=4440ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4440ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=4440ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=4440ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4440ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=4440ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=4440ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4440ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4440ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4440ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4440ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4440ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4460ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4460ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4460ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4460ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4460ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4460ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4460ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4460ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4460ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4460ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4460ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4460ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4460ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=4460ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4460ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4460ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=4460ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=4460ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=4460ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4460ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=4460ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4460ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=4460ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=4460ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4460ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4460ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4460ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4480ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4480ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4480ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4480ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4480ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4480ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4480ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4480ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4480ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4480ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=4480ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4480ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4480ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4480ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=4480ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4480ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=4480ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=4480ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4480ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=4480ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=4480ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4480ms
fork_0->>philosopher_4: {:fork_granted, :fork_0}
Note over fork_0,philosopher_4: t=4480ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=4480ms
philosopher_4->>philosopher_4: {:mumble, "I'm full!"}
Note over philosopher_4,philosopher_4: t=4480ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4480ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4480ms
philosopher_4->>fork_0: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=4480ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4500ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4500ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4500ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4500ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4500ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4500ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4500ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=4500ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4500ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4500ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4500ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=4500ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4500ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4500ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=4500ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=4500ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=4500ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4500ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4500ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=4500ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=4500ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4500ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4500ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4500ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4500ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4500ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4500ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4500ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4520ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4520ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4520ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4520ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4520ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4520ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4520ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4520ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4520ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4520ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=4520ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=4520ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=4520ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4520ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4520ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=4520ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=4520ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=4520ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=4520ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4520ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=4520ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4520ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=4520ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=4520ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4520ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4520ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=4520ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4520ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4540ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4540ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4540ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4540ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4540ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4540ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4540ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4540ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4540ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4540ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=4540ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=4540ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=4540ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4540ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=4540ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=4540ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4540ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4540ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=4540ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4540ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4540ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=4540ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4540ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4540ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4540ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4540ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4540ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4560ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4560ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4560ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4560ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4560ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4560ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4560ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4560ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4560ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=4560ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=4560ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=4560ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4560ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=4560ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=4560ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4560ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=4560ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=4560ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=4560ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=4560ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=4560ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4560ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4560ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4560ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=4560ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4580ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4580ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4580ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4580ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4580ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4580ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4580ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4580ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=4580ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4580ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=4580ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4580ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=4580ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=4580ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=4580ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4580ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=4580ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4580ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=4580ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=4580ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4580ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4580ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4580ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4580ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4600ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4600ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4600ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4600ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4600ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4600ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4600ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4600ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4600ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=4600ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=4600ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4600ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=4600ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=4600ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4600ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=4600ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4600ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=4600ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=4600ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4600ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=4600ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4600ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4600ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4600ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4600ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4600ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4600ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4620ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4620ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4620ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4620ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4620ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4620ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4620ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4620ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4620ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4620ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=4620ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=4620ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=4620ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=4620ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4620ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4620ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=4620ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4620ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=4620ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=4620ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4620ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=4620ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4620ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4620ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4620ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4620ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4640ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4640ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4640ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4640ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4640ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4640ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4640ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4640ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4640ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=4640ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=4640ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4640ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=4640ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=4640ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4640ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=4640ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4640ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=4640ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=4640ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4640ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=4640ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4640ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4640ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4640ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4640ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4640ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4640ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4660ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4660ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4660ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4660ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4660ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4660ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4660ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4660ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4660ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4660ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=4660ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=4660ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=4660ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=4660ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4660ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4660ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=4660ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4660ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=4660ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=4660ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4660ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=4660ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4660ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4660ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4660ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4660ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4680ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4680ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4680ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4680ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4680ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4680ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4680ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4680ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4680ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=4680ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=4680ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4680ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=4680ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=4680ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4680ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=4680ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4680ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=4680ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=4680ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4680ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=4680ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4680ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4680ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4680ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4680ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4680ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4680ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4700ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4700ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4700ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4700ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4700ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4700ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4700ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4700ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4700ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4700ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=4700ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=4700ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=4700ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=4700ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4700ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4700ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=4700ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4700ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=4700ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=4700ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4700ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=4700ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4700ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4700ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4700ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4700ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4720ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4720ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4720ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4720ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4720ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4720ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4720ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4720ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4720ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=4720ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=4720ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4720ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=4720ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=4720ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4720ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=4720ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4720ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=4720ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=4720ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4720ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=4720ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4720ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4720ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4720ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4720ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4720ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4720ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4740ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4740ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4740ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4740ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4740ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4740ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4740ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4740ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4740ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4740ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=4740ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=4740ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=4740ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=4740ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4740ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4740ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=4740ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4740ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=4740ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=4740ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4740ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=4740ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4740ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4740ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4740ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4740ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4760ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4760ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4760ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4760ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4760ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4760ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4760ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4760ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4760ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=4760ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=4760ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4760ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=4760ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=4760ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=4760ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4760ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4760ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=4760ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=4760ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4760ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4760ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=4760ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4760ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4760ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4760ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4760ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4760ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4780ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4780ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4780ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4780ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4780ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4780ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4780ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4780ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4780ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=4780ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4780ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=4780ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=4780ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=4780ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4780ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4780ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=4780ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=4780ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4780ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=4780ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=4780ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4780ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4780ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4780ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4780ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4780ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4800ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4800ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4800ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4800ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4800ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4800ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4800ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4800ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4800ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=4800ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=4800ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4800ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=4800ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=4800ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4800ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=4800ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4800ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=4800ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=4800ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4800ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=4800ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4800ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4800ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4800ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4800ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4800ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4800ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4820ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4820ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4820ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4820ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4820ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4820ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4820ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4820ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4820ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=4820ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4820ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=4820ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=4820ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=4820ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4820ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4820ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=4820ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=4820ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4820ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=4820ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=4820ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4820ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4820ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4820ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4820ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4820ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4840ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4840ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4840ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4840ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4840ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4840ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4840ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4840ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4840ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=4840ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=4840ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4840ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=4840ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=4840ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4840ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=4840ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4840ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=4840ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=4840ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4840ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=4840ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4840ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4840ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4840ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4840ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4840ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4840ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4860ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4860ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4860ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4860ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4860ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4860ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4860ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4860ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4860ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=4860ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4860ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=4860ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=4860ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=4860ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4860ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4860ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=4860ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=4860ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4860ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=4860ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=4860ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4860ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4860ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4860ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4860ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4860ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4880ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4880ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4880ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4880ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4880ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4880ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4880ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4880ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4880ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=4880ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=4880ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4880ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=4880ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=4880ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4880ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=4880ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4880ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=4880ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=4880ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4880ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=4880ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4880ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4880ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4880ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4880ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4880ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4880ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4900ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4900ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4900ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4900ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4900ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4900ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4900ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4900ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4900ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=4900ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4900ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=4900ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=4900ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=4900ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4900ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4900ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=4900ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=4900ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4900ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=4900ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=4900ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4900ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4900ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4900ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4900ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4900ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4920ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4920ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4920ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4920ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4920ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4920ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4920ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4920ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4920ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=4920ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=4920ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4920ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=4920ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4920ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=4920ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=4920ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4920ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=4920ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=4920ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4920ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=4920ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4920ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4920ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4920ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4920ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4920ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4920ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4940ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4940ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4940ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4940ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4940ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4940ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4940ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4940ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4940ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4940ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=4940ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4940ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=4940ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=4940ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=4940ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4940ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4940ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=4940ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=4940ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4940ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=4940ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=4940ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4940ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4940ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4940ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4940ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4940ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4940ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4960ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4960ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4960ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4960ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4960ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4960ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4960ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4960ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4960ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=4960ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=4960ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4960ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=4960ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=4960ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=4960ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=4960ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4960ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=4960ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=4960ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=4960ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=4960ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4960ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4960ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4960ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=4960ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=4980ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=4980ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=4980ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=4980ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=4980ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4980ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4980ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4980ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=4980ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=4980ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=4980ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=4980ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=4980ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=4980ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=4980ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4980ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=4980ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4980ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=4980ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=4980ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=4980ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=4980ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=4980ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=4980ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=4980ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=4980ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=4980ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=4980ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5000ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5000ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5000ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5000ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5000ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5000ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5000ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5000ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5000ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=5000ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=5000ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5000ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=5000ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=5000ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5000ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=5000ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5000ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=5000ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=5000ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=5000ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=5000ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5000ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5000ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5000ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5000ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5020ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5020ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5020ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5020ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5020ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5020ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5020ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5020ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5020ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5020ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=5020ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=5020ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5020ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=5020ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=5020ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5020ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=5020ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5020ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=5020ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=5020ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=5020ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=5020ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=5020ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5020ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5020ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5020ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5020ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5020ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5040ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5040ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5040ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5040ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5040ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5040ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5040ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5040ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5040ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=5040ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=5040ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5040ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=5040ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=5040ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5040ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=5040ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5040ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=5040ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=5040ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=5040ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=5040ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5040ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5040ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5040ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5040ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5060ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5060ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5060ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5060ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5060ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5060ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5060ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5060ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5060ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5060ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=5060ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=5060ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5060ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=5060ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=5060ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=5060ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5060ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5060ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=5060ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=5060ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=5060ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5060ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=5060ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=5060ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5060ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5060ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5060ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5060ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5080ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5080ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5080ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5080ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5080ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5080ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5080ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5080ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5080ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=5080ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=5080ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=5080ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=5080ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5080ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5080ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=5080ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5080ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=5080ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=5080ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=5080ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=5080ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5080ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5080ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5080ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5080ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5100ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5100ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5100ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5100ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5100ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5100ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5100ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5100ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5100ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5100ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=5100ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=5100ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=5100ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=5100ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5100ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5100ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=5100ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=5100ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=5100ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=5100ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=5100ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=5100ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5100ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5100ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5100ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5100ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5100ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5120ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5120ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5120ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5120ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5120ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5120ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5120ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5120ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5120ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=5120ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=5120ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5120ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=5120ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=5120ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5120ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=5120ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5120ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=5120ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=5120ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=5120ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=5120ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5120ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5120ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5120ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5120ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5140ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5140ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5140ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5140ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5140ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5140ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5140ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5140ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5140ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5140ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5140ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=5140ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=5140ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=5140ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=5140ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5140ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5140ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=5140ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=5140ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=5140ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=5140ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=5140ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=5140ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5140ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5140ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5140ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5140ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5140ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5160ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5160ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5160ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5160ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5160ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5160ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5160ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5160ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5160ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5160ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=5160ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=5160ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5160ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=5160ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=5160ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5160ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=5160ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5160ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=5160ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=5160ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=5160ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=5160ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5160ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5160ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5160ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5160ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5180ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5180ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5180ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5180ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5180ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5180ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5180ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5180ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5180ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5180ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=5180ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=5180ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=5180ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=5180ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5180ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5180ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=5180ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=5180ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=5180ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=5180ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=5180ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=5180ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5180ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5180ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5180ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5180ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5180ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5200ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5200ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5200ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5200ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5200ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5200ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5200ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5200ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5200ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5200ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=5200ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=5200ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5200ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=5200ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=5200ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5200ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=5200ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5200ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=5200ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=5200ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=5200ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=5200ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5200ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5200ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5200ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5200ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5220ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5220ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5220ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5220ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5220ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5220ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5220ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5220ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5220ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5220ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=5220ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=5220ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=5220ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=5220ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5220ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5220ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=5220ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=5220ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=5220ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=5220ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=5220ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=5220ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5220ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5220ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5220ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5220ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5220ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5240ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5240ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5240ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5240ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5240ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5240ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5240ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5240ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5240ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=5240ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=5240ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5240ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=5240ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=5240ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5240ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=5240ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5240ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=5240ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=5240ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=5240ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=5240ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5240ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5240ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5240ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5240ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5260ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5260ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5260ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5260ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5260ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5260ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5260ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5260ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5260ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5260ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5260ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=5260ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=5260ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=5260ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=5260ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5260ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5260ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=5260ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=5260ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=5260ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=5260ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=5260ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=5260ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5260ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5260ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5260ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5260ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5260ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5280ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5280ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5280ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5280ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5280ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5280ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5280ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5280ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5280ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=5280ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=5280ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5280ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=5280ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=5280ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5280ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=5280ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5280ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=5280ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=5280ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=5280ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=5280ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5280ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5280ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5280ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5280ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5300ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5300ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5300ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5300ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5300ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5300ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5300ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5300ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5300ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5300ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=5300ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=5300ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=5300ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=5300ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5300ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5300ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=5300ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=5300ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=5300ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=5300ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=5300ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=5300ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5300ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5300ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5300ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5300ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5300ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5320ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5320ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5320ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5320ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5320ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5320ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5320ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5320ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5320ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=5320ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=5320ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5320ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=5320ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=5320ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5320ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=5320ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5320ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=5320ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=5320ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=5320ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=5320ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5320ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5320ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5320ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5320ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5340ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5340ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5340ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5340ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5340ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5340ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5340ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5340ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5340ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5340ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5340ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=5340ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=5340ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=5340ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=5340ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5340ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5340ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=5340ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=5340ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=5340ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=5340ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=5340ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=5340ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5340ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5340ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5340ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5340ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5340ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5360ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5360ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5360ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5360ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5360ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5360ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5360ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5360ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5360ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=5360ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=5360ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5360ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=5360ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=5360ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5360ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=5360ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5360ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=5360ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=5360ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=5360ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=5360ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5360ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5360ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5360ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5360ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5380ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5380ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5380ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5380ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5380ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5380ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5380ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5380ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5380ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5380ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5380ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=5380ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=5380ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=5380ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=5380ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5380ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5380ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=5380ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=5380ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=5380ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=5380ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=5380ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=5380ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5380ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5380ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5380ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5380ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5380ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5400ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5400ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5400ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5400ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5400ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5400ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5400ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5400ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5400ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=5400ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=5400ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5400ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=5400ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=5400ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5400ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=5400ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5400ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=5400ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=5400ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=5400ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=5400ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5400ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5400ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5400ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5400ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5420ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5420ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5420ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5420ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5420ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5420ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5420ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5420ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5420ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5420ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=5420ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=5420ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=5420ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=5420ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5420ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5420ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=5420ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=5420ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=5420ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=5420ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=5420ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=5420ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5420ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5420ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5420ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5420ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5420ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5440ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5440ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5440ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5440ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5440ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5440ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5440ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5440ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5440ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=5440ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=5440ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5440ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=5440ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=5440ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5440ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=5440ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5440ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=5440ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=5440ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=5440ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=5440ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5440ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5440ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5440ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5440ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5460ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5460ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5460ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5460ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5460ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5460ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5460ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5460ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5460ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=5460ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5460ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=5460ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=5460ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=5460ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5460ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5460ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=5460ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=5460ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=5460ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=5460ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=5460ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=5460ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5460ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5460ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5460ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5460ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5460ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5480ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5480ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5480ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5480ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5480ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5480ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5480ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5480ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5480ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=5480ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=5480ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5480ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=5480ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=5480ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5480ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=5480ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5480ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=5480ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=5480ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=5480ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=5480ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5480ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5480ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5480ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5480ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5500ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5500ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5500ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5500ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5500ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5500ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5500ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5500ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5500ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5500ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=5500ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5500ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=5500ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=5500ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=5500ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5500ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5500ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=5500ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=5500ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=5500ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=5500ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=5500ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=5500ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5500ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5500ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5500ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5500ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5500ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5520ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5520ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5520ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5520ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5520ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5520ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5520ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5520ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5520ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=5520ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=5520ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5520ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=5520ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=5520ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5520ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=5520ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5520ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=5520ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=5520ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=5520ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=5520ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5520ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5520ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5520ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5520ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5540ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5540ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5540ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5540ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5540ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5540ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5540ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5540ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5540ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5540ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=5540ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5540ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=5540ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=5540ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=5540ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5540ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5540ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=5540ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=5540ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=5540ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=5540ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=5540ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=5540ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5540ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5540ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5540ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5540ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5540ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5560ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5560ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5560ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5560ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5560ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5560ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5560ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5560ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5560ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=5560ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=5560ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5560ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=5560ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=5560ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5560ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=5560ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5560ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=5560ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=5560ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=5560ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=5560ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5560ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5560ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5560ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5560ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5580ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5580ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5580ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5580ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5580ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5580ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5580ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5580ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5580ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5580ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=5580ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5580ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=5580ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=5580ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=5580ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5580ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5580ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=5580ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=5580ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=5580ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=5580ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=5580ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=5580ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5580ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5580ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5580ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5580ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5580ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5600ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5600ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5600ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5600ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5600ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5600ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5600ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5600ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5600ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=5600ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=5600ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5600ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=5600ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=5600ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5600ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=5600ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5600ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=5600ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=5600ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=5600ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=5600ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5600ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5600ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5600ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5600ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5620ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5620ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5620ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5620ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5620ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5620ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5620ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5620ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5620ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5620ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=5620ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5620ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=5620ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=5620ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=5620ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5620ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5620ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=5620ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=5620ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=5620ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=5620ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=5620ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=5620ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5620ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5620ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5620ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5620ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5620ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5640ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5640ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5640ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5640ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5640ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5640ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5640ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5640ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5640ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=5640ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=5640ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5640ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=5640ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=5640ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5640ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=5640ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5640ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=5640ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=5640ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=5640ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=5640ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5640ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5640ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5640ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5640ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5660ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5660ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5660ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5660ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5660ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5660ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5660ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5660ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5660ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=5660ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5660ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=5660ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=5660ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=5660ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5660ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5660ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=5660ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=5660ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=5660ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=5660ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=5660ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=5660ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5660ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5660ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5660ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5660ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=5660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5680ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5680ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5680ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5680ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5680ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5680ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5680ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5680ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5680ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=5680ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=5680ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5680ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=5680ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=5680ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5680ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=5680ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5680ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=5680ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=5680ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=5680ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=5680ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5680ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=5680ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5680ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5680ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5680ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5680ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5700ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5700ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5700ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5700ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5700ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5700ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5700ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5700ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5700ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5700ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=5700ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=5700ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=5700ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=5700ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5700ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=5700ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5700ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=5700ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=5700ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=5700ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=5700ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=5700ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5700ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5700ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5700ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5700ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=5700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5720ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5720ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5720ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5720ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5720ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5720ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5720ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5720ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5720ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=5720ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=5720ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5720ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=5720ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=5720ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5720ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=5720ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5720ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=5720ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=5720ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=5720ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5720ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=5720ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=5720ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5720ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5720ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5720ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5720ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5740ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5740ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5740ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5740ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5740ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5740ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5740ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5740ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5740ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5740ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=5740ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=5740ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=5740ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=5740ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5740ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=5740ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5740ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=5740ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=5740ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=5740ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=5740ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=5740ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5740ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5740ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5740ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5740ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=5740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5760ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5760ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5760ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5760ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5760ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5760ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5760ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5760ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5760ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=5760ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=5760ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5760ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=5760ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=5760ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5760ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=5760ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5760ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=5760ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=5760ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=5760ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=5760ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5760ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=5760ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5760ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5760ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5760ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5760ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5780ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5780ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5780ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5780ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5780ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5780ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5780ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5780ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5780ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5780ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=5780ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=5780ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=5780ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=5780ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5780ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=5780ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5780ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=5780ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=5780ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=5780ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=5780ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=5780ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5780ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5780ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5780ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5780ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=5780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5800ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5800ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5800ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5800ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5800ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5800ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5800ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5800ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5800ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=5800ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=5800ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5800ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=5800ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=5800ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5800ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=5800ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5800ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=5800ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=5800ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=5800ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=5800ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5800ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=5800ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5800ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5800ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5800ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5800ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5820ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5820ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5820ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5820ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5820ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5820ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5820ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5820ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5820ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5820ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=5820ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=5820ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=5820ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=5820ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5820ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=5820ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5820ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=5820ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=5820ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=5820ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=5820ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=5820ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5820ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5820ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5820ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5820ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=5820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5840ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5840ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5840ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5840ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5840ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5840ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5840ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5840ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5840ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=5840ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5840ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=5840ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=5840ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=5840ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=5840ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5840ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5840ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=5840ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=5840ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=5840ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=5840ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=5840ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5840ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5840ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5840ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=5840ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5840ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5860ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5860ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5860ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5860ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5860ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5860ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5860ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5860ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5860ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5860ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=5860ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=5860ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=5860ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=5860ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5860ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=5860ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5860ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=5860ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=5860ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=5860ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=5860ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=5860ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5860ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5860ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5860ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5860ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=5860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5880ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5880ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5880ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5880ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5880ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5880ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5880ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5880ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5880ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=5880ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=5880ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5880ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=5880ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=5880ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5880ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=5880ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5880ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=5880ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=5880ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=5880ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=5880ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5880ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=5880ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5880ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5880ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5880ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5880ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5900ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5900ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5900ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5900ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5900ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5900ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5900ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5900ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5900ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5900ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=5900ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=5900ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=5900ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=5900ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5900ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=5900ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5900ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=5900ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=5900ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=5900ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=5900ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=5900ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5900ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5900ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5900ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5900ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=5900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5920ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5920ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5920ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5920ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5920ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5920ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5920ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5920ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5920ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=5920ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=5920ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5920ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=5920ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=5920ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5920ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=5920ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5920ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=5920ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=5920ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=5920ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=5920ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5920ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=5920ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5920ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5920ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5920ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5920ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5940ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5940ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5940ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5940ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5940ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5940ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5940ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5940ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5940ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5940ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5940ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=5940ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=5940ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=5940ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=5940ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5940ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=5940ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5940ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=5940ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=5940ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=5940ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=5940ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=5940ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5940ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5940ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5940ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5940ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=5940ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5960ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5960ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5960ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5960ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5960ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5960ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5960ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5960ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5960ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=5960ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=5960ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5960ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=5960ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=5960ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5960ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=5960ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5960ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=5960ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=5960ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=5960ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=5960ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5960ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=5960ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5960ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5960ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=5960ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5960ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=5980ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=5980ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=5980ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=5980ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=5980ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5980ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5980ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=5980ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5980ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=5980ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=5980ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=5980ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=5980ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=5980ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=5980ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5980ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=5980ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=5980ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=5980ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=5980ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=5980ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=5980ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=5980ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=5980ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=5980ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=5980ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=5980ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=5980ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6000ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6000ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6000ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6000ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6000ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6000ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6000ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6000ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6000ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=6000ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=6000ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6000ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=6000ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=6000ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6000ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=6000ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6000ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=6000ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=6000ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6000ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=6000ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6000ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6000ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6000ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6000ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6000ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6000ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6020ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6020ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6020ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6020ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6020ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6020ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6020ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6020ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6020ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6020ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=6020ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6020ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=6020ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=6020ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=6020ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=6020ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6020ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=6020ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=6020ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6020ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=6020ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6020ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6020ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6020ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6020ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6020ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6040ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6040ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6040ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6040ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6040ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6040ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6040ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6040ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6040ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=6040ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=6040ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6040ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=6040ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=6040ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6040ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=6040ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6040ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=6040ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=6040ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6040ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=6040ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6040ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6040ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6040ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6040ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6040ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6040ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6060ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6060ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6060ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6060ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6060ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6060ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6060ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6060ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6060ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6060ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6060ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=6060ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=6060ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=6060ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=6060ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6060ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6060ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=6060ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6060ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=6060ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=6060ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6060ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=6060ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6060ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6060ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6060ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6060ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6060ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6080ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6080ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6080ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6080ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6080ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6080ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6080ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6080ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6080ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=6080ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=6080ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6080ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=6080ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=6080ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6080ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=6080ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6080ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=6080ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=6080ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6080ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=6080ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6080ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6080ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6080ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6080ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6080ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6080ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6100ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6100ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6100ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6100ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6100ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6100ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6100ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6100ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6100ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6100ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=6100ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=6100ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=6100ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=6100ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6100ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6100ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=6100ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6100ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=6100ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=6100ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6100ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=6100ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6100ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6100ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6100ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6100ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6120ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6120ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6120ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6120ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6120ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6120ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6120ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6120ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6120ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=6120ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=6120ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6120ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=6120ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=6120ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6120ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=6120ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6120ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=6120ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=6120ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6120ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=6120ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6120ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6120ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6120ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6120ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6120ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6120ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6140ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6140ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6140ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6140ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6140ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6140ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6140ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6140ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6140ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6140ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6140ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=6140ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=6140ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=6140ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=6140ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6140ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6140ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=6140ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6140ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=6140ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=6140ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6140ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=6140ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6140ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6140ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6140ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6140ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6140ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6160ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6160ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6160ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6160ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6160ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6160ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6160ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6160ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6160ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6160ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=6160ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=6160ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6160ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=6160ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=6160ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6160ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=6160ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6160ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=6160ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=6160ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6160ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=6160ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6160ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6160ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6160ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6160ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6160ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6160ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6180ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6180ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6180ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6180ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6180ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6180ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6180ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6180ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6180ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6180ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=6180ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=6180ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=6180ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=6180ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6180ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6180ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=6180ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6180ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=6180ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=6180ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6180ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=6180ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6180ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6180ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6180ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6180ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6200ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6200ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6200ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6200ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6200ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6200ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6200ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6200ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6200ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6200ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=6200ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=6200ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6200ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=6200ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=6200ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6200ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=6200ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6200ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=6200ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=6200ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6200ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=6200ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6200ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6200ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6200ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6200ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6200ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6200ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6220ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6220ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6220ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6220ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6220ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6220ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6220ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6220ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6220ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=6220ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6220ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=6220ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=6220ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=6220ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=6220ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6220ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6220ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=6220ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=6220ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=6220ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=6220ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=6220ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6220ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6220ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6220ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=6220ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6240ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6240ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6240ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6240ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6240ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6240ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6240ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6240ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6240ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=6240ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=6240ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6240ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=6240ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=6240ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=6240ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6240ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6240ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=6240ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=6240ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6240ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6240ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=6240ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6240ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6240ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6240ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6240ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6240ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6260ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6260ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6260ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6260ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6260ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6260ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6260ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6260ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6260ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6260ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=6260ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6260ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=6260ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=6260ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=6260ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6260ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6260ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=6260ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=6260ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6260ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=6260ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=6260ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6260ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6260ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6260ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6260ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6260ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6260ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6280ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6280ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6280ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6280ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6280ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6280ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6280ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6280ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6280ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=6280ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=6280ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6280ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=6280ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=6280ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6280ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=6280ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6280ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=6280ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=6280ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6280ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=6280ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6280ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6280ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6280ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6280ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6280ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6280ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6300ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6300ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6300ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6300ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6300ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6300ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6300ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6300ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6300ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=6300ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6300ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=6300ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=6300ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=6300ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6300ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6300ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=6300ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=6300ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6300ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=6300ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=6300ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6300ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6300ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6300ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6300ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6300ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6320ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6320ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6320ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6320ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6320ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6320ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6320ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6320ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6320ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=6320ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=6320ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6320ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=6320ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=6320ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6320ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=6320ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6320ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=6320ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=6320ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6320ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=6320ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6320ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6320ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6320ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6320ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6320ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6320ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6340ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6340ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6340ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6340ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6340ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6340ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6340ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6340ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6340ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6340ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=6340ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6340ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=6340ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=6340ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=6340ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6340ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6340ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=6340ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=6340ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6340ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=6340ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=6340ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6340ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6340ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6340ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6340ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6340ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6340ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6360ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6360ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6360ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6360ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6360ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6360ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6360ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6360ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6360ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=6360ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=6360ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6360ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=6360ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=6360ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6360ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=6360ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6360ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=6360ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=6360ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6360ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=6360ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6360ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6360ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6360ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6360ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6360ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6360ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6380ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6380ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6380ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6380ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6380ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6380ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6380ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6380ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6380ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6380ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=6380ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6380ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=6380ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=6380ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=6380ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6380ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6380ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=6380ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=6380ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6380ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=6380ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=6380ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6380ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6380ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6380ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6380ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6380ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6380ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6400ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6400ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6400ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6400ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6400ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6400ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6400ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6400ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6400ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=6400ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=6400ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6400ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=6400ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=6400ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6400ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=6400ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6400ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=6400ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=6400ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6400ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=6400ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6400ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6400ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6400ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6400ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6400ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6400ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6420ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6420ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6420ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6420ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6420ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6420ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6420ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6420ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6420ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=6420ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6420ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=6420ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=6420ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=6420ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=6420ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6420ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=6420ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=6420ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6420ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=6420ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6420ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6420ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6420ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6420ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6440ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6440ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6440ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6440ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6440ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6440ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6440ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6440ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6440ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=6440ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=6440ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6440ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=6440ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=6440ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6440ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=6440ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6440ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=6440ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=6440ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6440ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=6440ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6440ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6440ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6440ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6440ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6440ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6440ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6460ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6460ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6460ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6460ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6460ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6460ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6460ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6460ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6460ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=6460ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=6460ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6460ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=6460ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=6460ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=6460ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6460ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6460ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=6460ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=6460ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=6460ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=6460ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=6460ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6460ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6460ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6460ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=6460ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6480ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6480ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6480ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6480ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6480ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6480ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6480ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6480ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6480ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=6480ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=6480ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6480ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=6480ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=6480ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6480ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=6480ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6480ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=6480ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=6480ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6480ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=6480ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6480ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6480ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6480ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6480ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6480ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6480ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6500ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6500ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6500ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6500ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6500ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6500ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6500ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6500ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6500ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6500ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=6500ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6500ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=6500ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=6500ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=6500ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6500ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6500ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=6500ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=6500ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6500ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=6500ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=6500ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6500ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6500ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6500ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6500ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6500ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6500ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6520ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6520ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6520ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6520ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6520ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6520ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6520ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6520ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6520ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=6520ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=6520ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6520ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=6520ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=6520ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6520ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=6520ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6520ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=6520ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=6520ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6520ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=6520ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6520ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6520ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6520ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6520ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6520ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6520ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6540ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6540ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6540ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6540ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6540ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6540ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6540ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6540ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6540ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=6540ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6540ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=6540ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=6540ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=6540ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6540ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6540ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=6540ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=6540ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6540ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=6540ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=6540ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6540ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6540ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6540ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6540ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6540ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6560ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6560ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6560ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6560ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6560ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6560ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6560ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6560ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6560ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=6560ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=6560ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6560ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=6560ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=6560ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6560ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=6560ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6560ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=6560ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=6560ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6560ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=6560ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6560ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6560ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6560ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6560ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6560ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6560ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6580ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6580ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6580ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6580ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6580ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6580ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6580ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6580ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6580ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=6580ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6580ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=6580ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=6580ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=6580ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6580ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6580ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=6580ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=6580ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6580ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=6580ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=6580ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6580ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6580ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6580ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6580ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6580ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6600ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6600ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6600ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6600ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6600ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6600ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6600ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6600ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6600ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=6600ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=6600ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6600ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=6600ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=6600ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6600ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=6600ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6600ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=6600ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=6600ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6600ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=6600ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6600ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6600ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6600ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6600ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6600ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6600ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6620ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6620ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6620ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6620ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6620ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6620ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6620ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6620ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6620ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=6620ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6620ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=6620ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=6620ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=6620ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6620ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6620ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=6620ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=6620ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6620ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=6620ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=6620ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6620ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6620ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6620ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6620ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6620ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6640ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6640ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6640ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6640ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6640ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6640ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6640ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6640ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6640ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=6640ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=6640ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6640ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=6640ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=6640ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6640ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=6640ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6640ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=6640ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=6640ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6640ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=6640ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6640ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6640ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6640ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6640ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6640ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6640ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6660ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6660ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6660ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6660ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6660ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6660ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6660ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6660ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6660ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=6660ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6660ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=6660ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=6660ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=6660ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6660ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6660ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=6660ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=6660ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6660ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=6660ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=6660ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6660ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6660ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6660ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6660ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6660ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6680ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6680ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6680ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6680ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6680ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6680ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6680ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6680ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6680ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=6680ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=6680ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6680ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=6680ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=6680ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6680ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=6680ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6680ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=6680ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=6680ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6680ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=6680ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6680ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6680ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6680ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6680ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6680ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6680ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6700ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6700ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6700ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6700ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6700ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6700ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6700ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6700ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6700ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=6700ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6700ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=6700ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=6700ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=6700ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6700ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6700ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=6700ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=6700ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6700ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=6700ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=6700ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6700ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6700ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6700ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6700ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6700ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6720ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6720ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6720ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6720ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6720ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6720ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6720ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6720ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6720ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=6720ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=6720ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6720ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=6720ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=6720ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6720ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=6720ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6720ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=6720ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=6720ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6720ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=6720ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6720ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6720ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6720ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6720ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6720ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6720ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6740ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6740ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6740ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6740ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6740ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6740ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6740ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6740ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6740ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=6740ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6740ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=6740ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=6740ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=6740ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6740ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6740ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=6740ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=6740ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6740ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=6740ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=6740ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6740ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6740ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6740ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6740ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6740ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6760ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6760ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6760ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6760ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6760ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6760ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6760ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6760ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6760ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=6760ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=6760ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6760ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=6760ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=6760ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6760ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=6760ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6760ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=6760ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=6760ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6760ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=6760ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6760ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6760ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6760ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6760ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6760ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6760ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6780ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6780ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6780ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6780ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6780ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6780ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6780ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6780ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6780ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=6780ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6780ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=6780ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=6780ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=6780ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6780ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6780ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=6780ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=6780ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6780ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=6780ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=6780ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6780ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6780ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6780ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6780ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6780ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6800ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6800ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6800ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6800ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6800ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6800ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6800ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6800ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6800ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=6800ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=6800ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6800ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=6800ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=6800ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6800ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=6800ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6800ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=6800ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=6800ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6800ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=6800ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6800ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6800ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6800ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6800ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6800ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6800ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6820ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6820ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6820ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6820ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6820ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6820ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6820ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6820ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6820ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=6820ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6820ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=6820ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=6820ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=6820ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6820ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6820ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=6820ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=6820ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6820ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=6820ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=6820ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6820ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6820ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6820ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6820ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6820ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6840ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6840ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6840ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6840ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6840ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6840ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6840ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6840ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6840ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=6840ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=6840ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6840ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=6840ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=6840ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=6840ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6840ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6840ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=6840ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=6840ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6840ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6840ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=6840ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6840ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6840ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6840ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6840ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6840ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6860ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6860ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6860ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6860ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6860ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6860ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6860ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6860ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6860ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=6860ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6860ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=6860ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=6860ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=6860ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6860ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6860ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=6860ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=6860ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6860ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=6860ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=6860ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6860ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6860ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6860ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6860ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6860ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6880ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6880ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6880ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6880ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6880ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6880ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6880ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6880ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6880ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=6880ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=6880ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6880ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=6880ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=6880ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6880ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=6880ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6880ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=6880ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=6880ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6880ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=6880ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6880ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6880ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6880ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6880ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6880ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6880ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6900ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6900ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6900ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6900ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6900ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6900ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6900ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6900ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6900ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=6900ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6900ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=6900ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=6900ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=6900ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6900ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6900ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=6900ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=6900ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6900ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=6900ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=6900ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6900ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6900ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6900ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6900ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6900ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6920ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6920ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6920ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6920ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6920ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6920ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6920ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6920ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6920ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=6920ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=6920ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6920ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=6920ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=6920ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6920ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=6920ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6920ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=6920ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=6920ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6920ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=6920ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6920ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6920ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6920ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6920ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6920ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6920ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6940ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6940ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6940ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6940ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6940ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6940ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6940ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6940ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6940ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6940ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=6940ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=6940ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6940ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=6940ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=6940ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6940ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=6940ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6940ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=6940ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=6940ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=6940ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=6940ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=6940ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6940ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6940ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6940ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=6940ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6940ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6960ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6960ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6960ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6960ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6960ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6960ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=6960ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6960ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6960ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=6960ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6960ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=6960ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6960ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=6960ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6960ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=6960ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=6960ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6960ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=6960ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=6960ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6960ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=6960ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6960ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=6960ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=6960ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6960ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6960ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=6980ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=6980ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=6980ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=6980ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=6980ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6980ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6980ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6980ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=6980ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=6980ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=6980ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=6980ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=6980ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=6980ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=6980ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=6980ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=6980ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=6980ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=6980ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=6980ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=6980ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=6980ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=6980ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=6980ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=6980ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=6980ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7000ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7000ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7000ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7000ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7000ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7000ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7000ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7000ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7000ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=7000ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=7000ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7000ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=7000ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=7000ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7000ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7000ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=7000ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=7000ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=7000ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=7000ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7000ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=7000ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=7000ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7000ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7000ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7000ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7000ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7020ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7020ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7020ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7020ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7020ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7020ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7020ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7020ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7020ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7020ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7020ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=7020ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=7020ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7020ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=7020ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=7020ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=7020ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=7020ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=7020ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=7020ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=7020ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=7020ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7020ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7020ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7020ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7020ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7040ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7040ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7040ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7040ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7040ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7040ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7040ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7040ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=7040ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7040ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7040ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=7040ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7040ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=7040ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=7040ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7040ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=7040ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=7040ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=7040ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=7040ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=7040ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=7040ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7040ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7040ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7040ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7040ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7040ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7060ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7060ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7060ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7060ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7060ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7060ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7060ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7060ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7060ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7060ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=7060ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=7060ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=7060ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7060ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=7060ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=7060ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=7060ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=7060ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=7060ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7060ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=7060ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=7060ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7060ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7060ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=7060ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7060ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7080ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7080ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7080ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7080ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7080ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7080ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7080ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7080ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=7080ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7080ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=7080ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=7080ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7080ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7080ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=7080ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7080ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=7080ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=7080ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=7080ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=7080ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=7080ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=7080ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7080ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7080ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7080ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7080ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7100ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7100ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7100ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7100ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7100ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7100ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=7100ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=7100ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7100ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7100ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7100ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7100ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=7100ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=7100ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7100ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=7100ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=7100ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=7100ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7100ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7100ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7100ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=7100ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=7100ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7100ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=7100ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7100ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7120ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7120ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7120ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7120ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7120ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7120ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7120ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7120ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7120ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7120ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=7120ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=7120ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7120ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7120ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=7120ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=7120ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=7120ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=7120ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=7120ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7120ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=7120ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=7120ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7120ms
fork_0->>philosopher_4: {:fork_granted, :fork_0}
Note over fork_0,philosopher_4: t=7120ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7120ms
philosopher_4->>philosopher_4: {:mumble, "I'm full!"}
Note over philosopher_4,philosopher_4: t=7120ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7120ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7120ms
philosopher_4->>fork_0: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=7120ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7140ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7140ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7140ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7140ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7140ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7140ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7140ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=7140ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7140ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7140ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7140ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=7140ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=7140ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7140ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=7140ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=7140ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=7140ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=7140ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7140ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7140ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=7140ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=7140ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=7140ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7140ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7140ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=7140ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7160ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7160ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7160ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7160ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7160ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7160ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7160ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7160ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7160ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7160ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=7160ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=7160ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7160ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=7160ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=7160ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7160ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7160ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=7160ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=7160ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=7160ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=7160ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=7160ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7160ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=7160ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7160ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7160ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7160ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7160ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7180ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7180ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7180ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7180ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7180ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7180ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7180ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7180ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7180ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=7180ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7180ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=7180ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=7180ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=7180ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=7180ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=7180ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7180ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=7180ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=7180ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=7180ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=7180ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7180ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=7180ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=7180ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7180ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=7180ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7180ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7200ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7200ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7200ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7200ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7200ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7200ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7200ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7200ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=7200ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=7200ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7200ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7200ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=7200ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=7200ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=7200ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=7200ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7200ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=7200ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=7200ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7200ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=7200ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7200ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7200ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=7200ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=7200ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7200ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7220ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7220ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7220ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7220ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7220ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7220ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7220ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7220ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7220ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=7220ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=7220ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=7220ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=7220ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=7220ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=7220ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=7220ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7220ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=7220ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=7220ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7220ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7220ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=7220ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=7220ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7220ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=7220ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7220ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=7220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7240ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7240ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7240ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=7240ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7240ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7240ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7240ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7240ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7240ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7240ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7240ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7240ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=7240ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=7240ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=7240ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7240ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=7240ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=7240ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=7240ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=7240ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7240ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=7240ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=7240ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7240ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7240ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7240ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7240ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7260ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7260ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7260ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7260ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7260ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7260ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7260ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7260ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7260ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7260ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7260ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=7260ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=7260ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=7260ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=7260ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7260ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=7260ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=7260ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=7260ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=7260ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=7260ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=7260ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=7260ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7260ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7260ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7260ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7260ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=7260ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7280ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7280ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7280ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7280ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7280ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7280ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7280ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7280ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7280ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=7280ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=7280ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=7280ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7280ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7280ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=7280ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=7280ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=7280ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7280ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=7280ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=7280ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=7280ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7280ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7280ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=7280ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7280ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7280ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7280ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7300ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7300ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7300ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7300ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7300ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7300ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7300ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=7300ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7300ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7300ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=7300ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=7300ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7300ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7300ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7300ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7300ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=7300ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=7300ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7300ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7300ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7300ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=7300ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=7300ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=7300ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=7300ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=7300ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=7300ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=7300ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=7300ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7300ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=7300ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=7300ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7300ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=7300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7320ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7320ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7320ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7320ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7320ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7320ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7320ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7320ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7320ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7320ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=7320ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7320ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=7320ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=7320ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=7320ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=7320ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7320ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=7320ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=7320ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7320ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=7320ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=7320ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7320ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7320ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=7320ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7320ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7320ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7340ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7340ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7340ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7340ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7340ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7340ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7340ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7340ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7340ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=7340ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7340ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7340ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=7340ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7340ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7340ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=7340ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=7340ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=7340ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=7340ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=7340ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=7340ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=7340ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7340ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=7340ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7340ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7340ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7340ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7340ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7360ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7360ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7360ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7360ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7360ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7360ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7360ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=7360ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7360ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=7360ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7360ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7360ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7360ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=7360ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=7360ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=7360ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7360ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=7360ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=7360ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7360ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=7360ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=7360ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7360ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=7360ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7360ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7380ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7380ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7380ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7380ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7380ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7380ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7380ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7380ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7380ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7380ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=7380ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7380ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=7380ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=7380ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=7380ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=7380ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=7380ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7380ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7380ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7380ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=7380ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=7380ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=7380ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=7380ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7380ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7380ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7380ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7380ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7400ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7400ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7400ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7400ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7400ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7400ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7400ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7400ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7400ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7400ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=7400ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=7400ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=7400ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7400ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7400ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=7400ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=7400ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=7400ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=7400ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=7400ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=7400ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=7400ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7400ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7400ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7400ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7400ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7420ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7420ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7420ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7420ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7420ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7420ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7420ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7420ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7420ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=7420ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=7420ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7420ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7420ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=7420ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=7420ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7420ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=7420ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=7420ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=7420ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=7420ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=7420ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=7420ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7420ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7420ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7420ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7420ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7420ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7440ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7440ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7440ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7440ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7440ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7440ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7440ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7440ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=7440ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7440ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7440ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=7440ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=7440ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=7440ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7440ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=7440ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=7440ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=7440ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=7440ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=7440ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7440ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=7440ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7440ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7440ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=7440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7460ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7460ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7460ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7460ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7460ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7460ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7460ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7460ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=7460ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7460ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=7460ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7460ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7460ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=7460ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=7460ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=7460ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7460ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=7460ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=7460ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=7460ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=7460ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7460ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7460ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7460ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=7460ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7460ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7480ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7480ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7480ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7480ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7480ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7480ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7480ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7480ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=7480ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7480ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7480ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=7480ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7480ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=7480ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7480ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=7480ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=7480ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=7480ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=7480ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=7480ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=7480ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7480ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=7480ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7480ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7480ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7480ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7500ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7500ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7500ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7500ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7500ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7500ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7500ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7500ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7500ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7500ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=7500ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7500ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=7500ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=7500ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=7500ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7500ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7500ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=7500ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=7500ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=7500ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=7500ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=7500ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7500ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=7500ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7500ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7500ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7500ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=7500ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7520ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7520ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7520ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7520ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7520ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7520ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7520ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7520ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7520ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=7520ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=7520ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=7520ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=7520ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7520ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=7520ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=7520ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=7520ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7520ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=7520ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=7520ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=7520ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7520ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7520ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=7520ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=7520ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7520ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=7520ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7540ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7540ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7540ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7540ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7540ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7540ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7540ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7540ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=7540ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7540ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7540ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7540ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=7540ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=7540ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=7540ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=7540ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7540ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=7540ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7540ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=7540ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7540ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=7540ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=7540ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=7540ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7540ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7540ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=7540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7560ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7560ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7560ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7560ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7560ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7560ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7560ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7560ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=7560ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7560ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7560ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=7560ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7560ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7560ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=7560ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=7560ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=7560ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=7560ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=7560ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7560ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=7560ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7560ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=7560ms
fork_0->>philosopher_4: {:fork_granted, :fork_0}
Note over fork_0,philosopher_4: t=7560ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7560ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7560ms
philosopher_4->>philosopher_4: {:mumble, "I'm full!"}
Note over philosopher_4,philosopher_4: t=7560ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7560ms
philosopher_4->>fork_0: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=7560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7580ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7580ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7580ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7580ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7580ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7580ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7580ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7580ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7580ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7580ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=7580ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7580ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=7580ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=7580ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=7580ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=7580ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=7580ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=7580ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=7580ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=7580ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7580ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=7580ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7580ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7580ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7580ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7600ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7600ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7600ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7600ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7600ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7600ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7600ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=7600ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=7600ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7600ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=7600ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=7600ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7600ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=7600ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=7600ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=7600ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7600ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=7600ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=7600ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7600ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7600ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=7600ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=7600ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7600ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=7600ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=7600ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7600ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7620ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7620ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7620ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7620ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7620ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7620ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7620ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7620ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7620ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=7620ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7620ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=7620ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7620ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=7620ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7620ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=7620ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=7620ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=7620ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7620ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=7620ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=7620ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=7620ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=7620ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7620ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7620ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7620ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7620ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7620ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7640ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7640ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7640ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7640ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7640ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7640ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7640ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7640ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7640ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7640ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7640ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=7640ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=7640ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=7640ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=7640ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=7640ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=7640ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=7640ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=7640ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7640ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=7640ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=7640ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7640ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=7640ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7640ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7640ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=7640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7660ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7660ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7660ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7660ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7660ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7660ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=7660ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7660ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7660ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7660ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=7660ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7660ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=7660ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=7660ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=7660ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7660ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=7660ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7660ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7660ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=7660ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=7660ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=7660ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7660ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=7660ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7660ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7660ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7660ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7680ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7680ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7680ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7680ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7680ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7680ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7680ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7680ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7680ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7680ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7680ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=7680ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=7680ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=7680ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=7680ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=7680ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=7680ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=7680ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=7680ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7680ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=7680ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=7680ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7680ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=7680ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7680ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7680ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=7680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7700ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7700ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7700ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7700ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7700ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7700ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7700ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7700ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7700ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=7700ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=7700ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7700ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=7700ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=7700ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=7700ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7700ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7700ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=7700ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=7700ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=7700ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7700ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=7700ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7700ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=7700ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7700ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7700ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7700ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7720ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7720ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7720ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7720ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7720ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7720ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7720ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7720ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7720ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7720ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=7720ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=7720ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=7720ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7720ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7720ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=7720ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=7720ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=7720ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=7720ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=7720ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=7720ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7720ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7720ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=7720ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7720ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7720ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7720ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7740ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7740ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7740ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7740ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7740ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7740ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7740ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7740ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7740ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=7740ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=7740ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=7740ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=7740ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7740ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=7740ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=7740ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7740ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=7740ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=7740ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=7740ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=7740ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7740ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=7740ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=7740ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7740ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7740ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=7740ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7760ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7760ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7760ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7760ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7760ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7760ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7760ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=7760ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=7760ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7760ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7760ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7760ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7760ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7760ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=7760ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7760ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=7760ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7760ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=7760ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=7760ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=7760ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=7760ms
fork_0->>philosopher_4: {:fork_granted, :fork_0}
Note over fork_0,philosopher_4: t=7760ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=7760ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7760ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7760ms
philosopher_4->>philosopher_4: {:mumble, "I'm full!"}
Note over philosopher_4,philosopher_4: t=7760ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7760ms
philosopher_4->>fork_0: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=7760ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7780ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7780ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7780ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7780ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7780ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7780ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7780ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7780ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7780ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=7780ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=7780ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7780ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=7780ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=7780ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=7780ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7780ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=7780ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7780ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=7780ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7780ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=7780ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=7780ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7780ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=7780ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7780ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7780ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7780ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7800ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7800ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7800ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7800ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7800ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7800ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7800ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7800ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7800ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7800ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7800ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=7800ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=7800ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=7800ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=7800ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=7800ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7800ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7800ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=7800ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=7800ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=7800ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7800ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=7800ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=7800ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7800ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7800ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7800ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7800ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7820ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7820ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7820ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7820ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7820ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7820ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7820ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7820ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7820ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7820ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=7820ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7820ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=7820ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=7820ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=7820ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7820ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=7820ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=7820ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7820ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=7820ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=7820ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7820ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=7820ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=7820ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=7820ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7820ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7820ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7820ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7840ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7840ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7840ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7840ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7840ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7840ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7840ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7840ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7840ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=7840ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7840ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7840ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=7840ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=7840ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=7840ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7840ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=7840ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=7840ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=7840ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=7840ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=7840ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7840ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=7840ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7840ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7840ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7840ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7840ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7860ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7860ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7860ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7860ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7860ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7860ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7860ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7860ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7860ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=7860ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=7860ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=7860ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7860ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=7860ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=7860ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=7860ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7860ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=7860ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=7860ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=7860ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=7860ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=7860ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7860ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7860ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7860ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=7860ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=7860ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7880ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7880ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7880ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7880ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=7880ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7880ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=7880ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7880ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7880ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7880ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7880ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=7880ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7880ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=7880ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=7880ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=7880ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=7880ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7880ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7880ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=7880ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=7880ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=7880ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=7880ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7880ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7900ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7900ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7900ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7900ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7900ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7900ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7900ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7900ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7900ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=7900ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=7900ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=7900ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7900ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7900ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=7900ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7900ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=7900ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=7900ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=7900ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=7900ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=7900ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7900ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7900ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=7900ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7900ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7900ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7900ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7920ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7920ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7920ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7920ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7920ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7920ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7920ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7920ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7920ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=7920ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7920ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=7920ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=7920ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7920ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=7920ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=7920ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=7920ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=7920ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=7920ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=7920ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=7920ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=7920ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7920ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7920ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7920ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7920ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=7920ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7940ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7940ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7940ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7940ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7940ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7940ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7940ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7940ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7940ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7940ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=7940ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=7940ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7940ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=7940ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=7940ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7940ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=7940ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7940ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=7940ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=7940ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=7940ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=7940ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=7940ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7940ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7940ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7940ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7940ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7940ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7960ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7960ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7960ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7960ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7960ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7960ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7960ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=7960ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7960ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=7960ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7960ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7960ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=7960ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7960ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7960ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=7960ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=7960ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=7960ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=7960ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7960ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7960ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=7960ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=7960ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7960ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7960ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=7960ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7960ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7960ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=7980ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=7980ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=7980ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=7980ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=7980ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7980ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7980ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7980ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=7980ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=7980ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=7980ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=7980ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=7980ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=7980ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=7980ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=7980ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7980ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7980ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=7980ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=7980ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=7980ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=7980ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=7980ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=7980ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=7980ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=7980ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=7980ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=7980ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8000ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8000ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8000ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8000ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8000ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8000ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8000ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8000ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8000ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8000ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8000ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=8000ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=8000ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=8000ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=8000ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=8000ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8000ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=8000ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=8000ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8000ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8000ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=8000ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=8000ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8000ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=8000ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8000ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8000ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8020ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8020ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8020ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8020ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8020ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8020ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=8020ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8020ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8020ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8020ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8020ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=8020ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8020ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=8020ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=8020ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=8020ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=8020ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8020ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8020ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8020ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8020ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8020ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=8020ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=8020ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8020ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=8020ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8020ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8020ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8040ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8040ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8040ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8040ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8040ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8040ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8040ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8040ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8040ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8040ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8040ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=8040ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=8040ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=8040ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=8040ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=8040ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8040ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=8040ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=8040ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=8040ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=8040ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8040ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=8040ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8040ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8040ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8040ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8040ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8060ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8060ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8060ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8060ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8060ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8060ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8060ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=8060ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8060ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8060ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8060ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=8060ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=8060ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=8060ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8060ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=8060ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=8060ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8060ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=8060ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8060ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=8060ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=8060ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=8060ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8060ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8060ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=8060ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8080ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8080ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8080ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8080ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8080ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=8080ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8080ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8080ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8080ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8080ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8080ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=8080ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8080ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=8080ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=8080ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8080ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=8080ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8080ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=8080ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8080ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8080ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=8080ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=8080ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8080ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=8080ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8080ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8080ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8100ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8100ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8100ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8100ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8100ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=8100ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8100ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8100ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8100ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8100ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=8100ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8100ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8100ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=8100ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=8100ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8100ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=8100ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=8100ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=8100ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=8100ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=8100ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8100ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=8100ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8100ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8100ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8100ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8120ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8120ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8120ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8120ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8120ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8120ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8120ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8120ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8120ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8120ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=8120ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=8120ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=8120ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8120ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8120ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=8120ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=8120ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=8120ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=8120ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=8120ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=8120ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=8120ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8120ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8120ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8120ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8120ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8120ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8140ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8140ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8140ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8140ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8140ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8140ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8140ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8140ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8140ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=8140ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8140ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=8140ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=8140ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8140ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8140ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=8140ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8140ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=8140ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8140ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=8140ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=8140ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=8140ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8140ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8140ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=8140ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8140ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8140ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8140ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8160ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8160ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8160ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8160ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8160ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8160ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8160ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8160ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8160ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8160ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=8160ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=8160ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8160ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=8160ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=8160ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8160ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8160ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8160ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=8160ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=8160ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=8160ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=8160ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=8160ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8160ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8160ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8160ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8160ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8160ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8180ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8180ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8180ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8180ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8180ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8180ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8180ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=8180ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8180ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8180ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=8180ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=8180ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=8180ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=8180ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=8180ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8180ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=8180ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=8180ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=8180ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8180ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8180ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8180ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=8180ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=8180ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8180ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8200ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8200ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8200ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8200ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8200ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8200ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8200ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8200ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8200ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=8200ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8200ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8200ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8200ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=8200ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=8200ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=8200ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=8200ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8200ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8200ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=8200ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=8200ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=8200ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8200ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8200ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8200ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=8200ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8200ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8200ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8220ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8220ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8220ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8220ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8220ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8220ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8220ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8220ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8220ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=8220ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=8220ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=8220ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8220ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=8220ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=8220ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8220ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=8220ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8220ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=8220ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=8220ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8220ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=8220ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=8220ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8220ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=8220ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8220ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8220ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8240ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8240ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8240ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8240ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8240ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8240ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8240ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8240ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8240ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=8240ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=8240ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=8240ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8240ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8240ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=8240ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8240ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=8240ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=8240ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8240ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=8240ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8240ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8240ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8240ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=8240ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=8240ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8240ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8240ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8260ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8260ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8260ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8260ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8260ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8260ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8260ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8260ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8260ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8260ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=8260ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8260ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=8260ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=8260ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=8260ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=8260ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8260ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=8260ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=8260ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=8260ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=8260ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=8260ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8260ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8260ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8260ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=8260ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8280ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8280ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8280ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8280ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8280ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=8280ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8280ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8280ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8280ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8280ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=8280ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8280ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=8280ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=8280ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=8280ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8280ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=8280ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=8280ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8280ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8280ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=8280ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=8280ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8280ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=8280ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=8280ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8280ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8280ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8300ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8300ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8300ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8300ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8300ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8300ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8300ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=8300ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8300ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=8300ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8300ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8300ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8300ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8300ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8300ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=8300ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=8300ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=8300ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=8300ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=8300ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8300ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8300ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=8300ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=8300ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8300ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8300ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8300ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8300ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8320ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8320ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8320ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8320ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8320ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8320ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8320ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8320ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8320ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8320ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=8320ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8320ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=8320ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=8320ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=8320ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8320ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=8320ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=8320ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=8320ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8320ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8320ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=8320ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=8320ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8320ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=8320ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8320ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8320ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8320ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8340ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8340ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8340ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8340ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8340ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8340ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8340ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8340ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8340ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8340ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=8340ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8340ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=8340ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8340ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=8340ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=8340ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=8340ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8340ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=8340ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=8340ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=8340ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=8340ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8340ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8340ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8340ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=8340ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8340ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8340ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8360ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8360ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8360ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8360ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8360ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8360ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8360ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=8360ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=8360ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8360ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8360ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8360ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=8360ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8360ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=8360ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=8360ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=8360ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8360ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=8360ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8360ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8360ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=8360ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8360ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=8360ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8360ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=8360ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8360ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8360ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8380ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8380ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8380ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8380ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8380ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8380ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=8380ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8380ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8380ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8380ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8380ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8380ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=8380ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8380ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=8380ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=8380ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=8380ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=8380ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8380ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=8380ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=8380ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=8380ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8380ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=8380ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8380ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8380ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8380ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=8380ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8400ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8400ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8400ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8400ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8400ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=8400ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8400ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8400ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8400ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=8400ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8400ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8400ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=8400ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=8400ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8400ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=8400ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=8400ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=8400ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8400ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8400ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=8400ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8400ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=8400ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=8400ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8400ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8400ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=8400ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8420ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8420ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8420ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8420ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8420ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8420ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8420ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8420ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8420ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=8420ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8420ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=8420ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8420ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8420ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=8420ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=8420ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=8420ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=8420ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=8420ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=8420ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8420ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=8420ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8420ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=8420ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8420ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8420ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8420ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8440ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8440ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8440ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8440ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8440ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8440ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8440ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8440ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8440ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=8440ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=8440ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8440ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=8440ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=8440ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=8440ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8440ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8440ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=8440ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=8440ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=8440ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=8440ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=8440ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8440ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8440ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=8440ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8440ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8460ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8460ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8460ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8460ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8460ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8460ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8460ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8460ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8460ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8460ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=8460ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=8460ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8460ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=8460ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8460ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=8460ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=8460ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=8460ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=8460ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=8460ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=8460ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8460ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8460ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=8460ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8460ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8460ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8460ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8480ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8480ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8480ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8480ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8480ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8480ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8480ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8480ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8480ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=8480ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=8480ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8480ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8480ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=8480ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=8480ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8480ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8480ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=8480ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=8480ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=8480ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=8480ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=8480ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8480ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8480ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8480ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8480ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8500ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8500ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8500ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8500ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8500ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8500ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8500ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8500ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=8500ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8500ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8500ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=8500ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8500ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=8500ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8500ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=8500ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=8500ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=8500ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8500ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=8500ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=8500ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=8500ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8500ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=8500ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8500ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8500ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8500ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8500ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8520ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8520ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8520ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8520ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8520ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8520ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8520ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8520ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8520ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8520ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=8520ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=8520ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=8520ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8520ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=8520ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=8520ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=8520ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8520ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=8520ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=8520ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=8520ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8520ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8520ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8520ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=8520ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8520ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8520ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8540ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8540ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8540ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8540ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8540ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8540ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8540ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8540ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8540ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=8540ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=8540ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=8540ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8540ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8540ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=8540ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8540ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=8540ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8540ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=8540ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=8540ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=8540ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8540ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8540ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=8540ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8540ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8540ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8540ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8560ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8560ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8560ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8560ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8560ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8560ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8560ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8560ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8560ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8560ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=8560ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8560ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=8560ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=8560ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=8560ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=8560ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=8560ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=8560ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=8560ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=8560ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=8560ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8560ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8560ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8560ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8560ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8580ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8580ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8580ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8580ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8580ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8580ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8580ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8580ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=8580ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8580ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=8580ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=8580ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8580ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=8580ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8580ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=8580ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8580ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=8580ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=8580ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=8580ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=8580ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8580ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=8580ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8580ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8580ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8580ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=8580ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8600ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8600ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8600ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8600ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8600ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8600ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8600ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8600ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8600ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8600ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=8600ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=8600ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8600ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=8600ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=8600ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8600ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=8600ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=8600ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=8600ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=8600ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=8600ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=8600ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8600ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8600ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8600ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8600ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8620ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8620ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8620ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8620ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8620ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8620ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8620ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8620ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8620ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=8620ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=8620ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=8620ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=8620ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8620ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=8620ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8620ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=8620ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=8620ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8620ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8620ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=8620ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=8620ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8620ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=8620ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8620ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8620ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8640ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8640ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8640ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8640ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8640ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8640ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8640ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8640ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=8640ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8640ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=8640ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8640ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=8640ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8640ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8640ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=8640ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=8640ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8640ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=8640ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=8640ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=8640ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8640ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8640ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8640ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=8640ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8640ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8640ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8660ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8660ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8660ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8660ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8660ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=8660ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8660ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8660ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8660ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8660ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8660ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=8660ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8660ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8660ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=8660ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=8660ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8660ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=8660ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=8660ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8660ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8660ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=8660ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=8660ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8660ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8660ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=8660ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8660ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8660ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8680ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8680ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8680ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8680ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8680ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8680ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8680ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8680ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=8680ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8680ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8680ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8680ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=8680ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=8680ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=8680ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=8680ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8680ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=8680ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=8680ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=8680ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8680ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=8680ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=8680ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8680ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8680ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8680ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8700ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8700ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8700ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8700ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8700ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=8700ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8700ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8700ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8700ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8700ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=8700ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=8700ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=8700ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8700ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=8700ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8700ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=8700ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8700ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=8700ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=8700ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8700ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=8700ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=8700ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8700ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8700ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8700ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8700ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8720ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8720ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8720ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8720ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8720ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8720ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8720ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8720ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8720ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=8720ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8720ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=8720ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=8720ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=8720ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8720ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8720ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8720ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=8720ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=8720ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=8720ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=8720ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=8720ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8720ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8720ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8720ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8720ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8740ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8740ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8740ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8740ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8740ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8740ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8740ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8740ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8740ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=8740ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=8740ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=8740ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8740ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=8740ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8740ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8740ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=8740ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=8740ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=8740ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=8740ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=8740ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8740ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8740ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=8740ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8740ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8740ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8740ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8760ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8760ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8760ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8760ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8760ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8760ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8760ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8760ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8760ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=8760ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=8760ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=8760ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8760ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=8760ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8760ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=8760ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8760ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=8760ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=8760ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=8760ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=8760ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=8760ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8760ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8760ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8760ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=8760ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8760ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8780ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8780ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8780ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8780ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8780ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8780ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8780ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8780ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8780ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8780ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=8780ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=8780ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8780ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=8780ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=8780ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8780ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=8780ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=8780ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8780ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=8780ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8780ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=8780ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=8780ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8780ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=8780ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8780ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8780ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8780ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8800ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8800ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8800ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8800ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8800ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=8800ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8800ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8800ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8800ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8800ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=8800ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8800ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=8800ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=8800ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8800ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=8800ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8800ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=8800ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=8800ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8800ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=8800ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8800ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=8800ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=8800ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8800ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8800ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=8800ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8820ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8820ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8820ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8820ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8820ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=8820ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8820ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8820ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8820ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8820ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8820ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=8820ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8820ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=8820ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=8820ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8820ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=8820ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=8820ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=8820ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=8820ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=8820ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8820ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8820ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8820ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=8820ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8820ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8840ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8840ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8840ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8840ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8840ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8840ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8840ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8840ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=8840ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8840ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=8840ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=8840ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8840ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8840ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=8840ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=8840ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8840ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=8840ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=8840ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=8840ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=8840ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8840ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=8840ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8840ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8840ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8840ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8840ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8860ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8860ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8860ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8860ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8860ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8860ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8860ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8860ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8860ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8860ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=8860ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=8860ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=8860ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=8860ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8860ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=8860ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=8860ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=8860ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8860ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=8860ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=8860ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=8860ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8860ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8860ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8880ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8880ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8880ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8880ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8880ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8880ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8880ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8880ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8880ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=8880ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=8880ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8880ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=8880ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8880ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8880ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=8880ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8880ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=8880ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=8880ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=8880ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=8880ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8880ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8880ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=8880ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8880ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8880ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8880ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8900ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8900ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8900ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8900ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8900ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8900ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8900ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8900ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8900ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=8900ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=8900ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8900ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=8900ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=8900ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8900ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8900ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=8900ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=8900ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=8900ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=8900ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=8900ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=8900ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8900ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8900ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8900ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8900ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8920ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8920ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8920ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8920ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8920ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8920ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8920ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8920ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8920ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=8920ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=8920ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8920ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=8920ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8920ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=8920ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8920ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8920ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=8920ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=8920ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=8920ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=8920ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=8920ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8920ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8920ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8920ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=8920ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8920ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8940ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8940ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8940ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8940ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8940ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8940ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8940ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8940ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8940ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8940ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8940ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8940ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=8940ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=8940ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=8940ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=8940ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=8940ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=8940ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=8940ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=8940ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=8940ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=8940ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8940ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8940ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8940ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8940ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8960ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8960ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8960ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8960ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8960ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8960ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8960ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=8960ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=8960ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8960ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8960ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=8960ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8960ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=8960ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=8960ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8960ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=8960ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8960ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=8960ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=8960ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8960ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=8960ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=8960ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=8960ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8960ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8960ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=8960ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=8980ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8980ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=8980ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=8980ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=8980ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=8980ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=8980ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=8980ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=8980ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8980ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=8980ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8980ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=8980ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=8980ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=8980ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=8980ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=8980ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=8980ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=8980ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=8980ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=8980ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=8980ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=8980ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=8980ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=8980ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=8980ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9000ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9000ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9000ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9000ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9000ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9000ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9000ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9000ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9000ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=9000ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9000ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9000ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=9000ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=9000ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=9000ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9000ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=9000ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=9000ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9000ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=9000ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=9000ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9000ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9000ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=9000ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9000ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=9000ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9000ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9000ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9020ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9020ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9020ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9020ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9020ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9020ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9020ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9020ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9020ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9020ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=9020ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9020ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=9020ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=9020ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9020ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=9020ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9020ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=9020ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=9020ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=9020ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=9020ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=9020ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=9020ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9020ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9020ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9020ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9020ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9020ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9040ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9040ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9040ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9040ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9040ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9040ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9040ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9040ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=9040ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9040ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=9040ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=9040ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=9040ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=9040ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9040ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9040ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=9040ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=9040ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9040ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=9040ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=9040ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9040ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9040ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=9040ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=9040ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9040ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9040ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9060ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9060ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9060ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9060ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9060ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9060ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9060ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9060ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9060ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9060ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=9060ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=9060ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9060ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=9060ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9060ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9060ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=9060ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=9060ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=9060ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=9060ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=9060ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=9060ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=9060ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9060ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9060ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9060ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9060ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9060ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9080ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9080ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9080ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9080ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9080ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9080ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=9080ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=9080ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9080ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9080ms
fork_0->>philosopher_4: {:fork_granted, :fork_0}
Note over fork_0,philosopher_4: t=9080ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9080ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9080ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=9080ms
philosopher_4->>philosopher_4: {:mumble, "I'm full!"}
Note over philosopher_4,philosopher_4: t=9080ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=9080ms
fork_0->>philosopher_0: {:fork_denied, :fork_0}
Note over fork_0,philosopher_0: t=9080ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9080ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=9080ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9080ms
philosopher_4->>fork_0: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=9080ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=9080ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=9080ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9080ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9080ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9100ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9100ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9100ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9100ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9100ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9100ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9100ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9100ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9100ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=9100ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=9100ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9100ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9100ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=9100ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=9100ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9100ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9100ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9100ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=9100ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=9100ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9100ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9100ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=9100ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=9100ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=9100ms
fork_0->>philosopher_4: {:fork_granted, :fork_0}
Note over fork_0,philosopher_4: t=9100ms
philosopher_4->>philosopher_4: {:mumble, "I'm full!"}
Note over philosopher_4,philosopher_4: t=9100ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9100ms
philosopher_4->>fork_0: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=9100ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9120ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9120ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9120ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9120ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9120ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9120ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9120ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9120ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9120ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=9120ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9120ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=9120ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=9120ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=9120ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=9120ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=9120ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9120ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9120ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=9120ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=9120ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=9120ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9120ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=9120ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=9120ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9120ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9120ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9140ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9140ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9140ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9140ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9140ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9140ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9140ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9140ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9140ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9140ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=9140ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=9140ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9140ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=9140ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=9140ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=9140ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9140ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9140ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=9140ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=9140ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9140ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=9140ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=9140ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9140ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9140ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9140ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9160ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9160ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9160ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9160ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9160ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9160ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9160ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9160ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9160ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=9160ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=9160ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9160ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=9160ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9160ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=9160ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9160ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=9160ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=9160ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9160ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=9160ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=9160ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=9160ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=9160ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9160ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9160ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9160ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=9160ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9160ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9180ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9180ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9180ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9180ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9180ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9180ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=9180ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9180ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9180ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9180ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=9180ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=9180ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=9180ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=9180ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9180ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=9180ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=9180ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9180ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9180ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9180ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=9180ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=9180ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=9180ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=9180ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9180ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9180ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9180ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9200ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9200ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9200ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9200ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9200ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9200ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9200ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9200ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9200ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=9200ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9200ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=9200ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=9200ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9200ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=9200ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=9200ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=9200ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9200ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9200ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=9200ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9200ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=9200ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=9200ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9200ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9200ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9200ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9220ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9220ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9220ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9220ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9220ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=9220ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9220ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9220ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9220ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9220ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9220ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=9220ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=9220ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=9220ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=9220ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9220ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=9220ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=9220ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9220ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9220ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=9220ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9220ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=9220ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9220ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=9220ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9220ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=9220ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9240ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9240ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9240ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9240ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9240ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9240ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9240ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9240ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9240ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9240ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=9240ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=9240ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9240ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=9240ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9240ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=9240ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=9240ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=9240ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=9240ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9240ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=9240ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=9240ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=9240ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9240ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9240ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9240ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9240ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9260ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9260ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9260ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9260ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9260ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9260ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9260ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9260ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9260ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9260ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=9260ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=9260ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=9260ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=9260ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9260ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9260ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=9260ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=9260ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9260ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=9260ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=9260ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=9260ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9260ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9260ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=9260ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9260ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9260ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9260ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9280ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9280ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9280ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9280ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9280ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9280ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9280ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9280ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9280ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=9280ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=9280ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9280ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=9280ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=9280ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9280ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9280ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=9280ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=9280ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=9280ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9280ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=9280ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=9280ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9280ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9280ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9280ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9300ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9300ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9300ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9300ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9300ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9300ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9300ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9300ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9300ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=9300ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=9300ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9300ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=9300ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=9300ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=9300ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9300ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9300ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=9300ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=9300ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=9300ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=9300ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=9300ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9300ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9300ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9300ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9300ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=9300ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9320ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9320ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9320ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9320ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9320ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9320ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9320ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9320ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=9320ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9320ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9320ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=9320ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=9320ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=9320ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=9320ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9320ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9320ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=9320ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=9320ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9320ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=9320ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=9320ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9320ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9320ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9320ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9340ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9340ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9340ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9340ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9340ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9340ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9340ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9340ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9340ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=9340ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9340ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=9340ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=9340ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9340ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9340ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9340ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=9340ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=9340ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=9340ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9340ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=9340ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=9340ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=9340ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9340ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9340ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9340ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9360ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9360ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9360ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9360ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=9360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9360ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9360ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9360ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9360ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9360ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9360ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9360ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9360ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=9360ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=9360ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=9360ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=9360ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9360ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=9360ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9360ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=9360ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9360ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=9360ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=9360ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=9360ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9360ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9360ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9380ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9380ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9380ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9380ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9380ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9380ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9380ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9380ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9380ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9380ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=9380ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=9380ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=9380ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=9380ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9380ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=9380ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=9380ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9380ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=9380ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=9380ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9380ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9380ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9380ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=9380ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9380ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=9380ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9380ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9380ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9400ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9400ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9400ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9400ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9400ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9400ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9400ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=9400ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9400ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9400ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=9400ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=9400ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9400ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=9400ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=9400ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=9400ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9400ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9400ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=9400ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9400ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=9400ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=9400ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=9400ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=9400ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9400ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9400ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9400ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9420ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9420ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9420ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9420ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9420ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9420ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9420ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9420ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9420ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=9420ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=9420ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9420ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=9420ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=9420ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9420ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9420ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=9420ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=9420ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=9420ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=9420ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=9420ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9420ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=9420ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=9420ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9420ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9420ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9440ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9440ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9440ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9440ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9440ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9440ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9440ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9440ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=9440ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=9440ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9440ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9440ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=9440ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=9440ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=9440ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9440ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=9440ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=9440ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=9440ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9440ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9440ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9440ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=9440ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9440ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=9440ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9440ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9440ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9460ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9460ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9460ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9460ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9460ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9460ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9460ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9460ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9460ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=9460ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=9460ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9460ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=9460ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9460ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=9460ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=9460ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=9460ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9460ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=9460ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=9460ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=9460ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9460ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9460ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9460ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9480ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9480ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9480ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9480ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9480ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9480ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9480ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9480ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9480ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9480ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=9480ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=9480ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9480ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=9480ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=9480ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9480ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=9480ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=9480ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=9480ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=9480ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=9480ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9480ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9480ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=9480ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9480ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9480ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9480ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9500ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9500ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9500ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9500ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9500ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9500ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9500ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9500ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9500ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9500ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=9500ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9500ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=9500ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=9500ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9500ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=9500ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=9500ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=9500ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9500ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=9500ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=9500ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=9500ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=9500ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9500ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9500ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=9500ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9500ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9500ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9520ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9520ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9520ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9520ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9520ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9520ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9520ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9520ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9520ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9520ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=9520ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=9520ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=9520ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9520ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=9520ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=9520ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9520ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9520ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=9520ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=9520ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=9520ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9520ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=9520ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9520ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9520ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9520ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9540ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9540ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9540ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9540ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9540ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=9540ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9540ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9540ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9540ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9540ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9540ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9540ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=9540ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9540ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=9540ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=9540ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9540ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9540ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9540ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=9540ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=9540ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=9540ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=9540ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=9540ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=9540ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9540ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=9540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9560ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9560ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9560ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9560ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9560ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9560ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9560ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=9560ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9560ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9560ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9560ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9560ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=9560ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=9560ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=9560ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=9560ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=9560ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9560ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=9560ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9560ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=9560ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=9560ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9560ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9560ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=9560ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9560ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9580ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9580ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9580ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9580ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9580ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9580ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9580ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9580ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9580ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=9580ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9580ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=9580ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=9580ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9580ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=9580ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=9580ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9580ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=9580ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=9580ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9580ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=9580ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=9580ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9580ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9580ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9600ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9600ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9600ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9600ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9600ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9600ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9600ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9600ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9600ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=9600ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=9600ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9600ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=9600ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=9600ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=9600ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9600ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9600ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=9600ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=9600ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=9600ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9600ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=9600ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=9600ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9600ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9600ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9600ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9600ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9620ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9620ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9620ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9620ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9620ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9620ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9620ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9620ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9620ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9620ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=9620ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=9620ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9620ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=9620ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9620ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=9620ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=9620ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9620ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=9620ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=9620ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=9620ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=9620ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9620ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9620ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=9620ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9620ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9620ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9640ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9640ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9640ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9640ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9640ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=9640ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9640ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9640ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9640ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9640ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9640ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=9640ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9640ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=9640ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=9640ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=9640ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9640ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=9640ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=9640ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=9640ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=9640ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9640ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=9640ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9640ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9640ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9640ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9640ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9660ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9660ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9660ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9660ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9660ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9660ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9660ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9660ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=9660ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9660ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=9660ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9660ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9660ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=9660ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=9660ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=9660ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=9660ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9660ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9660ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=9660ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9660ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=9660ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=9660ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=9660ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9660ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9660ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=9660ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9680ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9680ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9680ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9680ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9680ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9680ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9680ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9680ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9680ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=9680ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=9680ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9680ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=9680ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=9680ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=9680ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9680ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9680ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=9680ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=9680ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=9680ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=9680ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9680ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9680ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9680ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9680ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9700ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9700ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9700ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9700ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9700ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9700ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9700ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9700ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9700ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=9700ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9700ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=9700ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=9700ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=9700ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=9700ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9700ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9700ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=9700ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=9700ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=9700ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=9700ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=9700ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9700ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9700ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9700ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=9700ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9700ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9720ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9720ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9720ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9720ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9720ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9720ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9720ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9720ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9720ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=9720ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=9720ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9720ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=9720ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=9720ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9720ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=9720ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9720ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=9720ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=9720ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=9720ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=9720ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9720ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9720ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9720ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9720ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9740ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9740ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9740ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9740ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9740ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9740ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9740ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9740ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9740ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=9740ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9740ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=9740ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=9740ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=9740ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=9740ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9740ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9740ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=9740ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=9740ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=9740ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=9740ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=9740ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9740ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9740ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9740ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=9740ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9740ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9760ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9760ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9760ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9760ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9760ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9760ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9760ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9760ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9760ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=9760ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=9760ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9760ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=9760ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=9760ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=9760ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9760ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9760ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=9760ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=9760ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=9760ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9760ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=9760ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9760ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9760ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9760ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9780ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9780ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9780ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9780ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9780ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9780ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9780ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9780ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9780ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=9780ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9780ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=9780ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=9780ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=9780ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=9780ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9780ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9780ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=9780ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=9780ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=9780ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=9780ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=9780ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9780ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9780ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9780ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=9780ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9780ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9800ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9800ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9800ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9800ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9800ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9800ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9800ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9800ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9800ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=9800ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=9800ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9800ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=9800ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=9800ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9800ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=9800ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9800ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=9800ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=9800ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=9800ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=9800ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9800ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9800ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9800ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9800ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9820ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9820ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9820ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9820ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9820ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9820ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9820ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9820ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9820ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=9820ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9820ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=9820ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=9820ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=9820ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=9820ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9820ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9820ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=9820ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=9820ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=9820ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=9820ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=9820ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9820ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9820ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9820ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=9820ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9820ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9840ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9840ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9840ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9840ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9840ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9840ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9840ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9840ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9840ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=9840ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=9840ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9840ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=9840ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=9840ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9840ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=9840ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9840ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=9840ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=9840ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=9840ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=9840ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9840ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9840ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9840ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9840ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9860ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9860ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9860ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9860ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9860ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9860ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9860ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9860ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9860ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=9860ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9860ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=9860ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=9860ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=9860ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=9860ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9860ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9860ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=9860ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=9860ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=9860ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=9860ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=9860ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9860ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9860ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9860ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9860ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=9860ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9880ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9880ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9880ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9880ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9880ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9880ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9880ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9880ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9880ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=9880ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=9880ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9880ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=9880ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=9880ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9880ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=9880ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9880ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=9880ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=9880ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=9880ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=9880ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9880ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9880ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9880ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9880ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9900ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9900ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9900ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9900ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9900ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9900ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9900ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9900ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9900ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=9900ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9900ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=9900ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=9900ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=9900ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=9900ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9900ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9900ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=9900ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=9900ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=9900ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=9900ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=9900ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9900ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9900ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9900ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=9900ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9900ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9920ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9920ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9920ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9920ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9920ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9920ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9920ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9920ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9920ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=9920ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=9920ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9920ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=9920ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=9920ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9920ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=9920ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9920ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=9920ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=9920ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=9920ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=9920ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9920ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9920ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9920ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9920ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9940ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9940ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9940ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9940ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9940ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9940ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9940ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9940ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9940ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9940ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=9940ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=9940ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9940ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=9940ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9940ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=9940ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=9940ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9940ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=9940ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=9940ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=9940ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=9940ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9940ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=9940ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9940ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9940ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9940ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9940ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9960ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9960ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9960ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9960ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9960ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9960ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9960ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9960ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9960ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=9960ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=9960ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9960ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=9960ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=9960ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9960ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=9960ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9960ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=9960ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=9960ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=9960ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=9960ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9960ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9960ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9960ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=9960ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=9980ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=9980ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=9980ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=9980ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=9980ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9980ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9980ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9980ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=9980ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=9980ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=9980ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=9980ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=9980ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=9980ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=9980ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9980ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=9980ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9980ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=9980ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=9980ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=9980ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=9980ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=9980ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=9980ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=9980ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=9980ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=9980ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=9980ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10000ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10000ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10000ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10000ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10000ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10000ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10000ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10000ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10000ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=10000ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=10000ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10000ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=10000ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=10000ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=10000ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=10000ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10000ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=10000ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=10000ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=10000ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=10000ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10000ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10000ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10000ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=10000ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10020ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10020ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10020ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10020ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10020ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10020ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10020ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10020ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10020ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10020ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=10020ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=10020ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10020ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=10020ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=10020ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10020ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10020ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10020ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=10020ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=10020ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=10020ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=10020ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=10020ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10020ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10020ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10020ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10020ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10020ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10040ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10040ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10040ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10040ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10040ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10040ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10040ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10040ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10040ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=10040ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=10040ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10040ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=10040ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=10040ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=10040ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=10040ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10040ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=10040ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=10040ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=10040ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=10040ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10040ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10040ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10040ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=10040ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10060ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10060ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10060ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10060ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10060ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10060ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10060ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10060ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10060ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10060ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=10060ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=10060ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10060ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=10060ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=10060ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10060ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10060ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10060ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=10060ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=10060ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=10060ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=10060ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=10060ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10060ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10060ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10060ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10060ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10060ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10080ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10080ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10080ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10080ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10080ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10080ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10080ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10080ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10080ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=10080ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=10080ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10080ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=10080ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=10080ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=10080ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=10080ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10080ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=10080ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=10080ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=10080ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=10080ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10080ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10080ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10080ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=10080ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10100ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10100ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10100ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10100ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10100ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10100ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10100ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10100ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10100ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=10100ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=10100ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10100ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=10100ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=10100ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=10100ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10100ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10100ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=10100ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=10100ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=10100ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=10100ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=10100ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10100ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10100ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10100ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=10100ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10120ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10120ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10120ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10120ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10120ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10120ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10120ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10120ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10120ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=10120ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=10120ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10120ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=10120ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=10120ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10120ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=10120ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10120ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=10120ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=10120ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=10120ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=10120ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10120ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=10120ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10120ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10120ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10120ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10120ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10140ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10140ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10140ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10140ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10140ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10140ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10140ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10140ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10140ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10140ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=10140ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10140ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=10140ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=10140ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=10140ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10140ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10140ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=10140ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=10140ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=10140ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=10140ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=10140ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=10140ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10140ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10140ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10140ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10140ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10140ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10160ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10160ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10160ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10160ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10160ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10160ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10160ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10160ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10160ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10160ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=10160ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=10160ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10160ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=10160ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=10160ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10160ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=10160ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10160ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=10160ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=10160ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=10160ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=10160ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10160ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=10160ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10160ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10160ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10160ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10160ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10180ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10180ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10180ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10180ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10180ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10180ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10180ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10180ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10180ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=10180ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10180ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=10180ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=10180ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=10180ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10180ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10180ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=10180ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=10180ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=10180ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=10180ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=10180ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=10180ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10180ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10180ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10180ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10180ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10200ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10200ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10200ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10200ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10200ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10200ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10200ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10200ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10200ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10200ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=10200ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=10200ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10200ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=10200ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=10200ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10200ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=10200ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10200ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=10200ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=10200ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=10200ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=10200ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10200ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=10200ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10200ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10200ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10200ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10200ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10220ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10220ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10220ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10220ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10220ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10220ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10220ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10220ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10220ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=10220ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10220ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=10220ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=10220ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=10220ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10220ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10220ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=10220ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=10220ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=10220ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=10220ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=10220ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=10220ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10220ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10220ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10220ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10220ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10240ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10240ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10240ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10240ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10240ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10240ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10240ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10240ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10240ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=10240ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=10240ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10240ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=10240ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=10240ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10240ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=10240ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10240ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=10240ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=10240ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=10240ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=10240ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10240ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=10240ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10240ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10240ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10240ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10240ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10260ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10260ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10260ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10260ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10260ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10260ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10260ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10260ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10260ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10260ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=10260ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10260ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=10260ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=10260ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=10260ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10260ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10260ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=10260ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=10260ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=10260ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=10260ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=10260ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=10260ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10260ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10260ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10260ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10260ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10260ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10280ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10280ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10280ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10280ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10280ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10280ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10280ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10280ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10280ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=10280ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=10280ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10280ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=10280ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=10280ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10280ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=10280ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10280ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=10280ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=10280ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=10280ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=10280ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10280ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=10280ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10280ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10280ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10280ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10280ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10300ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10300ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10300ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10300ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10300ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10300ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10300ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10300ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10300ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=10300ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10300ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=10300ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=10300ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=10300ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10300ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10300ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=10300ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=10300ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=10300ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=10300ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=10300ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=10300ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10300ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10300ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10300ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10300ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10320ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10320ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10320ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10320ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10320ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10320ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10320ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10320ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10320ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=10320ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=10320ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10320ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=10320ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=10320ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10320ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=10320ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10320ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=10320ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=10320ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=10320ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=10320ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10320ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=10320ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10320ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10320ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10320ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10320ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10340ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10340ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10340ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10340ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10340ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10340ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10340ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10340ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10340ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10340ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=10340ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10340ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=10340ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=10340ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=10340ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10340ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10340ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=10340ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=10340ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=10340ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=10340ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=10340ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=10340ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10340ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10340ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10340ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10340ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10340ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10360ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10360ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10360ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10360ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10360ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10360ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10360ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10360ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10360ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=10360ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=10360ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10360ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=10360ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=10360ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10360ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=10360ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10360ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=10360ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=10360ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=10360ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=10360ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10360ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=10360ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10360ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10360ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10360ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10360ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10380ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10380ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10380ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10380ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10380ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10380ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10380ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10380ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10380ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10380ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=10380ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10380ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=10380ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=10380ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=10380ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10380ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10380ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=10380ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=10380ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=10380ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=10380ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=10380ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=10380ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10380ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10380ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10380ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10380ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10380ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10400ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10400ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10400ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10400ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10400ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10400ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10400ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10400ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10400ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=10400ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=10400ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10400ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=10400ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=10400ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10400ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=10400ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10400ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=10400ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=10400ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=10400ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=10400ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10400ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=10400ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10400ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10400ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10400ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10400ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10420ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10420ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10420ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10420ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10420ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10420ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10420ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10420ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10420ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=10420ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10420ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=10420ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=10420ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=10420ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10420ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10420ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=10420ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=10420ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=10420ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=10420ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=10420ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=10420ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10420ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10420ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10420ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10420ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10440ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10440ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10440ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10440ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10440ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10440ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10440ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10440ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10440ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=10440ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=10440ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10440ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=10440ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=10440ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10440ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10440ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=10440ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=10440ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=10440ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=10440ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=10440ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=10440ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10440ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10440ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10440ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10440ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10440ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10460ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10460ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10460ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10460ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10460ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10460ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10460ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10460ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10460ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=10460ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10460ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=10460ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=10460ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=10460ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10460ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10460ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=10460ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=10460ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=10460ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=10460ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=10460ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=10460ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10460ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10460ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10460ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10460ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10480ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10480ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10480ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10480ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10480ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10480ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10480ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10480ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10480ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=10480ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=10480ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10480ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=10480ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=10480ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10480ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=10480ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10480ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=10480ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=10480ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=10480ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=10480ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10480ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=10480ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10480ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10480ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10480ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10480ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10500ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10500ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10500ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10500ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10500ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10500ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10500ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10500ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10500ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10500ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=10500ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10500ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=10500ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=10500ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=10500ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10500ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10500ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=10500ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=10500ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=10500ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=10500ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=10500ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=10500ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10500ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10500ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10500ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10500ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10500ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10520ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10520ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10520ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10520ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10520ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10520ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10520ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10520ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10520ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=10520ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=10520ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10520ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=10520ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=10520ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10520ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=10520ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10520ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=10520ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=10520ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=10520ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=10520ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10520ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=10520ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10520ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10520ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10520ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10520ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10540ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10540ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10540ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10540ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10540ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10540ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10540ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10540ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10540ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=10540ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10540ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=10540ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=10540ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=10540ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10540ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10540ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=10540ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=10540ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=10540ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=10540ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=10540ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=10540ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10540ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10540ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10540ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10540ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10560ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10560ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10560ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10560ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10560ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10560ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10560ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10560ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10560ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=10560ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=10560ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10560ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=10560ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=10560ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10560ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=10560ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10560ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=10560ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=10560ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=10560ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=10560ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10560ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=10560ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10560ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10560ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10560ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10560ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10580ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10580ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10580ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10580ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10580ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10580ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10580ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10580ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10580ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=10580ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10580ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=10580ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=10580ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=10580ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=10580ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10580ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=10580ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=10580ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=10580ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=10580ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=10580ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10580ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10580ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10580ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=10580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10600ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10600ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10600ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10600ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10600ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10600ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10600ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10600ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10600ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=10600ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=10600ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10600ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=10600ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=10600ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10600ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=10600ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10600ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=10600ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=10600ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=10600ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=10600ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10600ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=10600ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10600ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10600ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10600ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10600ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10620ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10620ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10620ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10620ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10620ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10620ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10620ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10620ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10620ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=10620ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10620ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=10620ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=10620ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=10620ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10620ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10620ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=10620ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=10620ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=10620ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=10620ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=10620ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=10620ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10620ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10620ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10620ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10620ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10640ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10640ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10640ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10640ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10640ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10640ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10640ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10640ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10640ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=10640ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=10640ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10640ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=10640ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=10640ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10640ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=10640ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10640ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=10640ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=10640ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=10640ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=10640ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10640ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=10640ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10640ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10640ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10640ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10640ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10660ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10660ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10660ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10660ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10660ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10660ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10660ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10660ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10660ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=10660ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10660ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=10660ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=10660ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=10660ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10660ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10660ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=10660ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=10660ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=10660ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=10660ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=10660ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=10660ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10660ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10660ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10660ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10660ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10680ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10680ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10680ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10680ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10680ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10680ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10680ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10680ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10680ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=10680ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=10680ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10680ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=10680ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=10680ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10680ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=10680ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10680ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=10680ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=10680ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=10680ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=10680ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10680ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=10680ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10680ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10680ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10680ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10680ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10700ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10700ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10700ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10700ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10700ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10700ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10700ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10700ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10700ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=10700ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10700ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=10700ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=10700ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=10700ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10700ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10700ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=10700ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=10700ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=10700ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=10700ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=10700ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=10700ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10700ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10700ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10700ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10700ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10720ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10720ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10720ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10720ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10720ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10720ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10720ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10720ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10720ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=10720ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=10720ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10720ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=10720ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=10720ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10720ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=10720ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10720ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=10720ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=10720ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=10720ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=10720ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10720ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=10720ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10720ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10720ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10720ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10720ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10740ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10740ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10740ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10740ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10740ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10740ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10740ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10740ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10740ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=10740ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10740ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=10740ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=10740ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=10740ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10740ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10740ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=10740ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=10740ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=10740ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=10740ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=10740ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=10740ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10740ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10740ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10740ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10740ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10740ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10760ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10760ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10760ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10760ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10760ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10760ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10760ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10760ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10760ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=10760ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=10760ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10760ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=10760ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=10760ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=10760ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=10760ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10760ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=10760ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=10760ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=10760ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=10760ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10760ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10760ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10760ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=10760ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10780ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10780ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10780ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10780ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10780ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10780ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10780ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10780ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10780ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=10780ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10780ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=10780ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=10780ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10780ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10780ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=10780ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10780ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=10780ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10780ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=10780ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=10780ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=10780ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10780ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10780ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=10780ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10780ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10780ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10780ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10800ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10800ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10800ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10800ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10800ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10800ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10800ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10800ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10800ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=10800ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=10800ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10800ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=10800ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=10800ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=10800ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=10800ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10800ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=10800ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=10800ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=10800ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=10800ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10800ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10800ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10800ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=10800ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10820ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10820ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10820ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10820ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10820ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10820ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10820ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10820ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10820ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10820ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=10820ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=10820ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10820ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=10820ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=10820ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10820ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10820ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10820ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=10820ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=10820ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=10820ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=10820ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=10820ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10820ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10820ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10820ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10820ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10820ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10840ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10840ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10840ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10840ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10840ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10840ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10840ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10840ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10840ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=10840ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=10840ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10840ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=10840ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=10840ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=10840ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=10840ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10840ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=10840ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=10840ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=10840ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=10840ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10840ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10840ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10840ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=10840ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10860ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10860ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10860ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10860ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10860ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10860ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10860ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10860ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10860ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10860ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=10860ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=10860ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10860ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=10860ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=10860ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10860ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10860ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10860ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=10860ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=10860ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=10860ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=10860ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=10860ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10860ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10860ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10860ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10860ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10860ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10880ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10880ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10880ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10880ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10880ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10880ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10880ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10880ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10880ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=10880ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=10880ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10880ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=10880ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=10880ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=10880ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=10880ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10880ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=10880ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=10880ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=10880ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=10880ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10880ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10880ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10880ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=10880ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10900ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10900ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10900ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10900ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10900ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10900ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10900ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10900ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10900ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10900ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=10900ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=10900ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10900ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=10900ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=10900ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10900ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10900ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10900ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=10900ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=10900ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=10900ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=10900ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=10900ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10900ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10900ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10900ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10900ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10900ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10920ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10920ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10920ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10920ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10920ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10920ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10920ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10920ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10920ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=10920ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=10920ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10920ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=10920ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=10920ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=10920ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=10920ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10920ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=10920ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=10920ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=10920ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=10920ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10920ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10920ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10920ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=10920ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10940ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10940ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10940ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10940ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10940ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10940ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10940ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10940ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10940ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10940ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=10940ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=10940ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10940ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=10940ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=10940ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10940ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10940ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10940ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=10940ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=10940ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=10940ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=10940ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=10940ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10940ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10940ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10940ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10940ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10940ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10960ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10960ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10960ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10960ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10960ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10960ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10960ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10960ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10960ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=10960ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=10960ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10960ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=10960ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=10960ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=10960ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=10960ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10960ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=10960ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=10960ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=10960ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=10960ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10960ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10960ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10960ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=10960ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=10980ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=10980ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=10980ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=10980ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=10980ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10980ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10980ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10980ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=10980ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=10980ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=10980ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=10980ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=10980ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=10980ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=10980ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10980ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=10980ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10980ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=10980ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=10980ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=10980ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=10980ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=10980ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=10980ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=10980ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=10980ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=10980ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=10980ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11000ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11000ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11000ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11000ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11000ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11000ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11000ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11000ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11000ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=11000ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=11000ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11000ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=11000ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=11000ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11000ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=11000ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11000ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=11000ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=11000ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=11000ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=11000ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11000ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11000ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11000ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11000ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11020ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11020ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11020ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11020ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11020ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11020ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11020ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11020ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11020ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11020ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=11020ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=11020ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11020ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=11020ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=11020ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=11020ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11020ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11020ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=11020ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=11020ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=11020ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=11020ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=11020ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11020ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11020ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11020ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=11020ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11020ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11040ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11040ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11040ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11040ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11040ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11040ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11040ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11040ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11040ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=11040ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=11040ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11040ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=11040ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=11040ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11040ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=11040ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11040ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=11040ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=11040ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=11040ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=11040ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11040ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11040ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11040ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11040ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11060ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11060ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11060ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11060ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11060ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11060ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11060ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11060ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11060ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11060ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=11060ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=11060ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11060ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=11060ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=11060ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=11060ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11060ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11060ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=11060ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=11060ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=11060ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=11060ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=11060ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11060ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11060ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11060ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=11060ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11060ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11080ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11080ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11080ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11080ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11080ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11080ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11080ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11080ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11080ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=11080ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=11080ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11080ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=11080ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=11080ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11080ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=11080ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11080ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=11080ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=11080ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=11080ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=11080ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11080ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11080ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11080ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11080ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11100ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11100ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11100ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11100ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11100ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11100ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11100ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11100ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11100ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11100ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=11100ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=11100ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11100ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=11100ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=11100ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=11100ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11100ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11100ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=11100ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=11100ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=11100ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=11100ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=11100ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11100ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11100ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11100ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=11100ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11100ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11120ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11120ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11120ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11120ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11120ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11120ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11120ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11120ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11120ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=11120ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=11120ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11120ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=11120ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=11120ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11120ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=11120ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11120ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=11120ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=11120ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=11120ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=11120ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11120ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11120ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11120ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11120ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11140ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11140ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11140ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11140ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11140ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11140ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11140ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11140ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11140ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11140ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=11140ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=11140ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11140ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=11140ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=11140ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=11140ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11140ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11140ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=11140ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=11140ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=11140ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=11140ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=11140ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11140ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11140ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11140ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=11140ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11140ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11160ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11160ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11160ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11160ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11160ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11160ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11160ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11160ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11160ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11160ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=11160ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=11160ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11160ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=11160ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=11160ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11160ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=11160ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11160ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=11160ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=11160ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=11160ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=11160ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11160ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11160ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11160ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11160ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11180ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11180ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11180ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11180ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11180ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11180ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11180ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11180ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11180ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11180ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=11180ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=11180ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11180ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=11180ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=11180ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=11180ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11180ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11180ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=11180ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=11180ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=11180ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=11180ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=11180ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11180ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11180ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11180ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=11180ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11180ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11200ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11200ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11200ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11200ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11200ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11200ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11200ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11200ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11200ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11200ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=11200ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=11200ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11200ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=11200ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=11200ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11200ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=11200ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11200ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=11200ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=11200ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=11200ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=11200ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11200ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11200ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11200ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11200ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11220ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11220ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11220ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11220ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11220ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11220ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11220ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11220ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11220ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11220ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=11220ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=11220ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11220ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=11220ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=11220ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=11220ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11220ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11220ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=11220ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=11220ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=11220ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=11220ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=11220ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11220ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11220ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11220ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=11220ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11220ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11240ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11240ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11240ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11240ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11240ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11240ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11240ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11240ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11240ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=11240ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=11240ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11240ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=11240ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=11240ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11240ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=11240ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11240ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=11240ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=11240ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=11240ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=11240ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11240ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11240ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11240ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11240ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11260ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11260ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11260ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11260ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11260ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11260ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11260ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11260ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11260ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11260ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=11260ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=11260ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11260ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=11260ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=11260ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=11260ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11260ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11260ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=11260ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=11260ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=11260ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=11260ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=11260ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11260ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11260ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11260ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=11260ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11260ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11280ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11280ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11280ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11280ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11280ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11280ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11280ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11280ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11280ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=11280ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=11280ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11280ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=11280ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=11280ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11280ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=11280ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11280ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=11280ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=11280ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=11280ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=11280ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11280ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11280ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11280ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11280ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11300ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11300ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11300ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11300ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11300ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11300ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11300ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11300ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11300ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11300ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=11300ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=11300ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11300ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=11300ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=11300ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=11300ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11300ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11300ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=11300ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=11300ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=11300ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=11300ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=11300ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11300ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11300ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11300ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=11300ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11300ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11320ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11320ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11320ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11320ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11320ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11320ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11320ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11320ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11320ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=11320ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=11320ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11320ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=11320ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=11320ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11320ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=11320ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11320ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=11320ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=11320ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=11320ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=11320ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11320ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11320ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11320ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11320ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11340ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11340ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11340ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11340ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11340ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11340ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11340ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11340ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11340ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11340ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=11340ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=11340ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11340ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=11340ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=11340ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=11340ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11340ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11340ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=11340ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=11340ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=11340ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=11340ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=11340ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11340ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11340ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11340ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=11340ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11340ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11360ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11360ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11360ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11360ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11360ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11360ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11360ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11360ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11360ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=11360ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=11360ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11360ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=11360ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=11360ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11360ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=11360ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11360ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=11360ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=11360ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=11360ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=11360ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11360ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11360ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11360ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11360ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11380ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11380ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11380ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11380ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11380ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11380ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11380ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11380ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11380ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11380ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=11380ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=11380ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11380ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=11380ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=11380ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=11380ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11380ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11380ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=11380ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=11380ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=11380ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=11380ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=11380ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11380ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11380ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11380ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=11380ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11380ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11400ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11400ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11400ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11400ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11400ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11400ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11400ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11400ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11400ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=11400ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=11400ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11400ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=11400ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=11400ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11400ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=11400ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11400ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=11400ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=11400ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=11400ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=11400ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11400ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11400ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11400ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11400ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11420ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11420ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11420ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11420ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11420ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11420ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11420ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11420ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11420ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=11420ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=11420ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11420ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=11420ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=11420ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11420ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11420ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11420ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=11420ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=11420ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=11420ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=11420ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=11420ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11420ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11420ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11420ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11420ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11440ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11440ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11440ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11440ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11440ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11440ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11440ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11440ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11440ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=11440ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=11440ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11440ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=11440ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=11440ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11440ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=11440ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11440ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=11440ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=11440ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=11440ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=11440ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=11440ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11440ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11440ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11440ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11440ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11440ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11460ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11460ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11460ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11460ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11460ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=11460ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11460ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11460ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11460ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11460ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11460ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=11460ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=11460ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11460ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=11460ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=11460ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11460ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=11460ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11460ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11460ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=11460ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11460ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=11460ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=11460ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11460ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11460ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11480ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11480ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11480ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11480ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11480ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11480ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11480ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11480ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11480ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=11480ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11480ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=11480ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=11480ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=11480ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=11480ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11480ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11480ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=11480ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=11480ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=11480ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=11480ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11480ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=11480ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11480ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=11480ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11480ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11480ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11500ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11500ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11500ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11500ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11500ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11500ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11500ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11500ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11500ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11500ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=11500ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=11500ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=11500ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11500ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11500ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=11500ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11500ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11500ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=11500ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=11500ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=11500ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=11500ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=11500ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11500ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11500ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11500ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11500ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11500ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11520ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11520ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11520ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11520ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11520ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11520ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=11520ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11520ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11520ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11520ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11520ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=11520ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11520ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=11520ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=11520ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11520ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=11520ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=11520ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=11520ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=11520ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11520ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=11520ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11520ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11520ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11520ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11540ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11540ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11540ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11540ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11540ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11540ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11540ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11540ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=11540ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11540ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11540ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=11540ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=11540ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=11540ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11540ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=11540ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11540ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=11540ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=11540ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11540ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=11540ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11540ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=11540ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11540ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11540ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11560ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11560ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11560ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11560ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11560ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11560ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11560ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11560ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11560ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=11560ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11560ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=11560ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=11560ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=11560ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=11560ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11560ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11560ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=11560ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=11560ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11560ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=11560ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=11560ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11560ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11560ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11560ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11580ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11580ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11580ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11580ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11580ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11580ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=11580ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11580ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11580ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11580ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=11580ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11580ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11580ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=11580ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=11580ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11580ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=11580ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11580ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=11580ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11580ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=11580ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=11580ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11580ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11580ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11580ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=11580ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11580ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11600ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11600ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11600ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11600ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=11600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11600ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11600ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11600ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11600ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11600ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11600ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11600ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=11600ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=11600ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=11600ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=11600ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11600ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=11600ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=11600ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11600ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11600ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11600ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=11600ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=11600ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=11600ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11600ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11600ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11600ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11620ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11620ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11620ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11620ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11620ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11620ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11620ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11620ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11620ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11620ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=11620ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=11620ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11620ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=11620ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=11620ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=11620ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=11620ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=11620ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=11620ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=11620ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=11620ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11620ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=11620ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11620ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11620ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11620ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=11620ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11640ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11640ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11640ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11640ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11640ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11640ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=11640ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11640ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11640ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=11640ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11640ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=11640ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=11640ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=11640ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11640ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11640ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=11640ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=11640ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11640ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11640ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=11640ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=11640ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11640ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11640ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11640ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11660ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11660ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11660ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11660ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11660ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11660ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11660ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11660ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11660ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=11660ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11660ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=11660ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11660ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11660ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=11660ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=11660ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11660ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=11660ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=11660ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=11660ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=11660ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11660ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11660ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=11660ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11660ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11660ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11660ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11680ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11680ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11680ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11680ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11680ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11680ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11680ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11680ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11680ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=11680ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11680ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=11680ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=11680ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11680ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11680ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=11680ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=11680ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=11680ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=11680ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=11680ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11680ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11680ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=11680ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11680ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11680ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11700ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11700ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11700ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11700ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11700ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=11700ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11700ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11700ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11700ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11700ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=11700ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11700ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=11700ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11700ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=11700ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11700ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=11700ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=11700ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11700ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=11700ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=11700ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=11700ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11700ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11700ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11700ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11700ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11700ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11720ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11720ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11720ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11720ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11720ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11720ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11720ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11720ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11720ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=11720ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=11720ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11720ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=11720ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=11720ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=11720ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11720ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11720ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=11720ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=11720ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=11720ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=11720ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=11720ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11720ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11720ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11720ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11720ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=11720ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11740ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11740ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11740ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11740ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11740ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11740ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11740ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11740ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11740ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=11740ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11740ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=11740ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=11740ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11740ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11740ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=11740ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=11740ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=11740ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=11740ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=11740ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=11740ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=11740ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11740ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11740ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11740ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11740ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11740ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11760ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11760ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11760ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11760ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11760ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11760ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=11760ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11760ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11760ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11760ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11760ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11760ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=11760ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=11760ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=11760ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11760ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=11760ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11760ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=11760ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11760ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11760ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11760ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=11760ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=11760ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=11760ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11760ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11760ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11760ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11780ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11780ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11780ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11780ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11780ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11780ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11780ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11780ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11780ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11780ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=11780ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=11780ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=11780ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11780ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11780ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=11780ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=11780ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=11780ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=11780ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=11780ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=11780ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=11780ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11780ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11780ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11780ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11780ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11780ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11800ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11800ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11800ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11800ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11800ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11800ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11800ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11800ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11800ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=11800ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=11800ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11800ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11800ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11800ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=11800ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11800ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11800ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=11800ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=11800ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=11800ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=11800ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=11800ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=11800ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11800ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11800ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11800ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11800ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11800ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11820ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11820ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11820ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11820ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11820ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11820ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11820ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11820ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11820ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=11820ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=11820ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=11820ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11820ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=11820ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11820ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11820ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11820ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=11820ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=11820ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=11820ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=11820ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=11820ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11820ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11820ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11820ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11820ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11820ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11840ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11840ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11840ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11840ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11840ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11840ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=11840ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11840ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11840ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11840ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=11840ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=11840ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=11840ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11840ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=11840ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=11840ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11840ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=11840ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=11840ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11840ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=11840ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=11840ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11840ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=11840ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=11840ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11840ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11840ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11860ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11860ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11860ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11860ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11860ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11860ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11860ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=11860ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=11860ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11860ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11860ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=11860ms
fork_0->>philosopher_4: {:fork_granted, :fork_0}
Note over fork_0,philosopher_4: t=11860ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11860ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=11860ms
fork_0->>philosopher_0: {:fork_denied, :fork_0}
Note over fork_0,philosopher_0: t=11860ms
philosopher_4->>philosopher_4: {:mumble, "I'm full!"}
Note over philosopher_4,philosopher_4: t=11860ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=11860ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=11860ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11860ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=11860ms
philosopher_4->>fork_0: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=11860ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=11860ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11860ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=11860ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11880ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11880ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11880ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11880ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11880ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11880ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11880ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11880ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11880ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11880ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=11880ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=11880ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=11880ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=11880ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11880ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=11880ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11880ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11880ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=11880ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=11880ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=11880ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11880ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=11880ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11880ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11880ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11880ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11900ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11900ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11900ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11900ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11900ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11900ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=11900ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11900ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11900ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11900ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11900ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11900ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=11900ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=11900ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=11900ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11900ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=11900ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=11900ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=11900ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=11900ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=11900ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11900ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11900ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=11900ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11900ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11900ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11900ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11920ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11920ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11920ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11920ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11920ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11920ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11920ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11920ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11920ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11920ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=11920ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11920ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=11920ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11920ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=11920ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=11920ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11920ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=11920ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=11920ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=11920ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=11920ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11920ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=11920ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11920ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11920ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11920ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11940ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11940ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11940ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11940ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11940ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11940ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11940ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11940ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11940ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11940ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=11940ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11940ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=11940ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=11940ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=11940ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=11940ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11940ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=11940ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=11940ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=11940ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=11940ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=11940ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=11940ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11940ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11940ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11940ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=11940ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11940ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11960ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11960ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11960ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11960ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11960ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11960ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11960ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11960ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11960ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=11960ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11960ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=11960ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=11960ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11960ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11960ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11960ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=11960ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=11960ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=11960ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11960ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=11960ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=11960ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=11960ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=11960ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11960ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11960ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11960ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=11980ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11980ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=11980ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=11980ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=11980ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=11980ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=11980ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11980ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11980ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=11980ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11980ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=11980ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=11980ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=11980ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=11980ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=11980ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=11980ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=11980ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=11980ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=11980ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=11980ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=11980ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=11980ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=11980ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=11980ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=11980ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12000ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12000ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12000ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12000ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12000ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12000ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12000ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12000ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=12000ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12000ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12000ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=12000ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12000ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12000ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=12000ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=12000ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12000ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=12000ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=12000ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=12000ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=12000ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12000ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12000ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=12000ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12000ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12000ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12000ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12020ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12020ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12020ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12020ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12020ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12020ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12020ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12020ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12020ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=12020ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=12020ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12020ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=12020ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=12020ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12020ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12020ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12020ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=12020ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12020ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=12020ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=12020ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=12020ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12020ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12020ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12020ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=12020ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12020ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12020ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12040ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12040ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12040ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12040ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12040ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12040ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12040ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=12040ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12040ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12040ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=12040ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12040ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=12040ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12040ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=12040ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12040ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12040ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=12040ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=12040ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=12040ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=12040ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12040ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12040ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=12040ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12040ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12040ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12040ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12060ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12060ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12060ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12060ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12060ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12060ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12060ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12060ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12060ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12060ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=12060ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=12060ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=12060ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12060ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=12060ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12060ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12060ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=12060ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=12060ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=12060ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=12060ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=12060ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12060ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12060ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12060ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12060ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12080ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12080ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12080ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12080ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12080ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12080ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12080ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12080ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12080ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=12080ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=12080ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12080ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=12080ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12080ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=12080ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12080ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12080ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=12080ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=12080ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=12080ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=12080ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=12080ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12080ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12080ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12080ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12080ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12080ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12100ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12100ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12100ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12100ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12100ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=12100ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12100ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12100ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12100ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12100ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12100ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12100ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=12100ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=12100ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=12100ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=12100ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12100ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12100ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=12100ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12100ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=12100ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12100ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=12100ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=12100ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12100ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12100ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12100ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12120ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12120ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12120ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12120ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12120ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12120ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=12120ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12120ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12120ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12120ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12120ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12120ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=12120ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=12120ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12120ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=12120ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12120ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=12120ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12120ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=12120ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=12120ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12120ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=12120ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12120ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12120ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=12120ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12120ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12120ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12140ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12140ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12140ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12140ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12140ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12140ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12140ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12140ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12140ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12140ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=12140ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12140ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=12140ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=12140ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12140ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12140ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=12140ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12140ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=12140ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=12140ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=12140ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=12140ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12140ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=12140ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12140ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12140ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12140ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12140ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12160ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12160ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12160ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12160ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12160ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12160ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12160ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12160ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12160ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12160ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=12160ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=12160ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=12160ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12160ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12160ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=12160ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12160ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=12160ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=12160ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=12160ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=12160ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=12160ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12160ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=12160ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12160ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12160ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12160ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12160ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12180ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12180ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12180ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12180ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12180ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12180ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12180ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12180ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12180ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=12180ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=12180ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=12180ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12180ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=12180ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12180ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=12180ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=12180ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=12180ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12180ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12180ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=12180ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=12180ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12180ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12180ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12200ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12200ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12200ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12200ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12200ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12200ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12200ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12200ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12200ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12200ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=12200ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=12200ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12200ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=12200ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12200ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=12200ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=12200ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=12200ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12200ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=12200ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=12200ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=12200ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12200ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=12200ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12200ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12200ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12200ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12200ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12220ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12220ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12220ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12220ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12220ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12220ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12220ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12220ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12220ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=12220ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=12220ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=12220ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12220ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12220ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=12220ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=12220ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=12220ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12220ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=12220ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=12220ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=12220ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12220ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=12220ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12220ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12220ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12220ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12220ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12240ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12240ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12240ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12240ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12240ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12240ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12240ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12240ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12240ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=12240ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12240ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=12240ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=12240ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12240ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=12240ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12240ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12240ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=12240ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=12240ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=12240ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=12240ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=12240ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12240ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12240ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12240ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12240ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12240ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12260ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12260ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12260ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12260ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12260ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12260ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12260ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12260ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12260ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12260ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=12260ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=12260ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12260ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=12260ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=12260ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=12260ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12260ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=12260ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12260ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=12260ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12260ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=12260ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=12260ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12260ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12260ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12260ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12280ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12280ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12280ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12280ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12280ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12280ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12280ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=12280ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12280ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12280ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12280ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12280ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=12280ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=12280ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12280ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=12280ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=12280ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12280ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=12280ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=12280ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12280ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12280ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=12280ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=12280ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12280ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12280ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12280ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12300ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12300ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12300ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12300ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12300ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12300ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12300ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12300ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12300ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=12300ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12300ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=12300ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=12300ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=12300ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12300ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12300ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=12300ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=12300ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=12300ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=12300ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=12300ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12300ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12300ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12300ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12320ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12320ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12320ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12320ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12320ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12320ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12320ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12320ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12320ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=12320ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12320ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=12320ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=12320ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12320ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12320ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=12320ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12320ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=12320ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=12320ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=12320ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=12320ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12320ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=12320ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12320ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12320ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12320ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12340ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12340ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12340ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12340ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12340ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12340ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12340ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12340ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12340ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12340ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=12340ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12340ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=12340ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=12340ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12340ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12340ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=12340ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=12340ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=12340ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=12340ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12340ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=12340ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=12340ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12340ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12340ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12340ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12360ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12360ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12360ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12360ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12360ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12360ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=12360ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12360ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12360ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12360ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12360ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12360ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=12360ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=12360ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12360ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=12360ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=12360ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12360ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=12360ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=12360ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12360ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=12360ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=12360ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12360ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12360ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12360ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12360ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12380ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12380ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12380ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12380ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12380ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12380ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12380ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12380ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=12380ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=12380ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12380ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12380ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12380ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12380ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12380ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=12380ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=12380ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=12380ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=12380ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=12380ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=12380ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12380ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=12380ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12380ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12380ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12380ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12400ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12400ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12400ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12400ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12400ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12400ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12400ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=12400ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12400ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12400ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12400ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=12400ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=12400ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=12400ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12400ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12400ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=12400ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=12400ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12400ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=12400ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12400ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=12400ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12400ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=12400ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12400ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12400ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12400ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12420ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12420ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12420ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12420ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12420ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12420ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12420ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12420ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12420ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=12420ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=12420ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=12420ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12420ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12420ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=12420ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=12420ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12420ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=12420ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=12420ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=12420ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=12420ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12420ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12420ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12420ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12420ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12440ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12440ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12440ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12440ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12440ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12440ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12440ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=12440ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12440ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12440ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12440ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=12440ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=12440ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=12440ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12440ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=12440ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=12440ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=12440ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=12440ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12440ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12440ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12440ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=12440ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12440ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12440ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12460ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12460ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12460ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12460ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12460ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12460ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12460ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12460ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=12460ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12460ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=12460ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12460ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12460ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12460ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=12460ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=12460ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=12460ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12460ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=12460ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=12460ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=12460ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12460ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=12460ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12460ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12460ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=12460ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12460ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12460ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12480ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12480ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12480ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12480ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12480ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12480ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12480ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12480ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12480ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=12480ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=12480ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12480ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12480ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=12480ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=12480ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12480ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12480ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=12480ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=12480ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=12480ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=12480ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12480ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12480ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=12480ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12480ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12480ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12480ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12500ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12500ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12500ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12500ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12500ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12500ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12500ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12500ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12500ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12500ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=12500ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12500ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=12500ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=12500ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=12500ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12500ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12500ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12500ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=12500ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=12500ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=12500ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=12500ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=12500ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12500ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12500ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12500ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12500ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12500ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12520ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12520ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12520ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12520ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12520ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12520ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12520ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12520ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12520ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12520ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=12520ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=12520ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12520ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12520ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=12520ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=12520ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=12520ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=12520ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12520ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=12520ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=12520ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12520ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=12520ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12520ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12520ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12520ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12540ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12540ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12540ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12540ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12540ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12540ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12540ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12540ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12540ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=12540ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=12540ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12540ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=12540ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12540ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=12540ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=12540ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12540ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12540ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=12540ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=12540ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12540ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=12540ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12540ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12540ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=12540ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12540ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12540ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12560ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12560ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12560ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12560ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12560ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12560ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12560ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12560ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12560ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=12560ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12560ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=12560ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=12560ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12560ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=12560ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=12560ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12560ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=12560ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=12560ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=12560ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=12560ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12560ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12560ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12560ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12560ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12580ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12580ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12580ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12580ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12580ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12580ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12580ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12580ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=12580ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12580ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12580ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=12580ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=12580ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12580ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=12580ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=12580ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12580ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=12580ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=12580ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=12580ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12580ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12580ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=12580ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12580ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12580ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12600ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12600ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12600ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12600ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12600ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12600ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12600ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12600ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12600ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12600ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12600ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=12600ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=12600ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=12600ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=12600ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=12600ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12600ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12600ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=12600ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12600ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12600ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=12600ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=12600ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12600ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12600ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=12600ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12600ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12620ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12620ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12620ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12620ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12620ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12620ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12620ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12620ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=12620ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12620ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12620ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=12620ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12620ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=12620ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12620ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=12620ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12620ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=12620ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=12620ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=12620ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=12620ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=12620ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12620ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12620ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12620ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12620ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12640ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12640ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12640ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12640ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12640ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12640ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12640ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12640ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12640ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=12640ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=12640ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12640ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=12640ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=12640ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12640ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12640ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12640ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=12640ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=12640ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=12640ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=12640ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=12640ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12640ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12640ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12640ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12640ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12640ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12660ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12660ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12660ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12660ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12660ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12660ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12660ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12660ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12660ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=12660ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12660ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=12660ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=12660ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12660ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=12660ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12660ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12660ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=12660ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=12660ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12660ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12660ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=12660ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=12660ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=12660ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12660ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12660ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12680ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12680ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12680ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12680ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12680ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=12680ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12680ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12680ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12680ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12680ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12680ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=12680ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=12680ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=12680ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12680ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=12680ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12680ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12680ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=12680ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12680ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12680ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=12680ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=12680ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=12680ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=12680ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12680ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12680ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12680ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12680ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12700ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12700ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12700ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12700ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12700ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12700ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12700ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12700ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12700ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=12700ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12700ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=12700ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12700ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12700ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=12700ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=12700ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=12700ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=12700ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=12700ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=12700ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=12700ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=12700ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12700ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12700ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12700ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12700ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12700ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12720ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12720ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12720ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12720ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12720ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12720ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12720ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=12720ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12720ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=12720ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=12720ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12720ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12720ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=12720ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12720ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=12720ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12720ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12720ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=12720ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=12720ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12720ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=12720ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=12720ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12720ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12720ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12720ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12740ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12740ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12740ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12740ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12740ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12740ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12740ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12740ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12740ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12740ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=12740ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=12740ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=12740ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12740ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=12740ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=12740ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12740ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=12740ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=12740ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12740ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=12740ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=12740ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12740ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12740ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12740ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12760ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12760ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12760ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12760ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12760ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12760ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=12760ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12760ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12760ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12760ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=12760ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12760ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12760ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12760ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=12760ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=12760ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12760ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=12760ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12760ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=12760ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12760ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=12760ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=12760ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=12760ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12760ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12760ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12780ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12780ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12780ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12780ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12780ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12780ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12780ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12780ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12780ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=12780ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=12780ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12780ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=12780ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=12780ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=12780ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12780ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12780ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=12780ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12780ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=12780ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=12780ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=12780ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=12780ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12780ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12780ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12780ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12780ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12800ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12800ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12800ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12800ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12800ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12800ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12800ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12800ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12800ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=12800ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=12800ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=12800ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12800ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12800ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12800ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12800ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=12800ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=12800ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=12800ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=12800ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=12800ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=12800ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12800ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12800ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12800ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12800ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12800ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12820ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12820ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12820ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12820ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12820ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12820ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12820ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12820ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12820ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12820ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=12820ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=12820ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12820ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=12820ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=12820ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12820ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12820ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12820ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=12820ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=12820ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=12820ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=12820ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=12820ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12820ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12820ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12820ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12820ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12820ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12840ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12840ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12840ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12840ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12840ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12840ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12840ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12840ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12840ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12840ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=12840ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=12840ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=12840ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=12840ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12840ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12840ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=12840ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=12840ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=12840ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=12840ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=12840ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12840ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12840ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12840ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12840ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12860ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12860ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12860ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12860ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12860ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12860ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=12860ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12860ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12860ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12860ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12860ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12860ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=12860ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=12860ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12860ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=12860ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=12860ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12860ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=12860ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=12860ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12860ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12860ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12860ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12860ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=12860ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=12860ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12860ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12860ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12880ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12880ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12880ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12880ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12880ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12880ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12880ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12880ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12880ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=12880ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=12880ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=12880ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12880ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12880ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=12880ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=12880ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=12880ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12880ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12880ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12880ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12880ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=12880ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=12880ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12880ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=12880ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12880ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12880ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12900ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12900ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=12900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12900ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12900ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12900ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12900ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12900ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12900ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12900ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=12900ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12900ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12900ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12900ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=12900ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=12900ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=12900ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12900ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=12900ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12900ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12900ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12900ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=12900ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=12900ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12900ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=12900ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12900ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12900ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12920ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12920ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12920ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12920ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12920ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12920ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12920ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12920ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12920ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12920ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12920ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=12920ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=12920ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=12920ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=12920ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=12920ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=12920ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12920ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=12920ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=12920ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=12920ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12920ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=12920ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12920ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12920ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12920ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12920ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12940ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12940ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12940ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12940ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12940ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12940ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12940ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12940ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12940ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=12940ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12940ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12940ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=12940ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12940ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=12940ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12940ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=12940ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=12940ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=12940ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12940ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=12940ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=12940ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12940ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12940ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=12940ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12940ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12940ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12940ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12960ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12960ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12960ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12960ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12960ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12960ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12960ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12960ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12960ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12960ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=12960ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=12960ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12960ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=12960ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=12960ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=12960ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12960ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12960ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=12960ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=12960ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=12960ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12960ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12960ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=12960ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12960ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=12960ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=12980ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=12980ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=12980ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=12980ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=12980ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12980ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12980ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=12980ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12980ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=12980ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=12980ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=12980ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=12980ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12980ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=12980ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=12980ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12980ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=12980ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=12980ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=12980ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=12980ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=12980ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=12980ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=12980ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=12980ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=12980ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=12980ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=12980ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13000ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13000ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13000ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13000ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13000ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13000ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13000ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13000ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=13000ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13000ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13000ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=13000ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=13000ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13000ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=13000ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=13000ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=13000ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13000ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=13000ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=13000ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13000ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=13000ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=13000ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13000ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13000ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13000ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13020ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13020ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13020ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13020ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13020ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13020ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13020ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13020ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13020ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=13020ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13020ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=13020ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13020ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=13020ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13020ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=13020ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=13020ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13020ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=13020ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=13020ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=13020ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=13020ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=13020ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13020ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13020ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13020ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13020ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=13020ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13040ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13040ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13040ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13040ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13040ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13040ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13040ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13040ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13040ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13040ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=13040ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=13040ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13040ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=13040ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13040ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=13040ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=13040ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=13040ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=13040ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=13040ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13040ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=13040ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13040ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=13040ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13040ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13040ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13040ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13060ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13060ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13060ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13060ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13060ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13060ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13060ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13060ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13060ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13060ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=13060ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=13060ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=13060ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=13060ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13060ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=13060ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=13060ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=13060ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=13060ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13060ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13060ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=13060ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=13060ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13060ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=13060ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13060ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13080ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13080ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13080ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13080ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13080ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13080ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13080ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=13080ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13080ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13080ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13080ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=13080ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13080ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=13080ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=13080ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=13080ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=13080ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=13080ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=13080ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13080ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13080ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13080ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=13080ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13080ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=13080ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13080ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13080ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13100ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13100ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13100ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13100ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13100ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13100ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13100ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13100ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13100ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=13100ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13100ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=13100ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=13100ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13100ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13100ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=13100ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=13100ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=13100ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=13100ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=13100ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=13100ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=13100ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13100ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13100ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13100ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13100ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13100ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13120ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13120ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13120ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13120ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13120ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13120ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13120ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13120ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13120ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13120ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=13120ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13120ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=13120ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=13120ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=13120ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=13120ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=13120ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13120ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=13120ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=13120ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13120ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=13120ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13120ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=13120ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13120ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13120ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13120ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13140ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13140ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13140ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13140ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13140ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13140ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13140ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=13140ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13140ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=13140ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13140ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13140ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13140ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13140ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=13140ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=13140ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=13140ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=13140ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=13140ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13140ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=13140ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=13140ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13140ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13140ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13140ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=13140ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13140ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13140ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13160ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13160ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13160ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13160ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13160ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13160ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13160ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13160ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13160ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13160ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=13160ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13160ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=13160ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=13160ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=13160ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13160ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13160ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=13160ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=13160ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=13160ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=13160ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=13160ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13160ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13160ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13160ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=13160ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13160ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13160ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13180ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13180ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13180ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13180ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13180ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13180ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13180ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13180ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13180ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=13180ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=13180ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13180ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=13180ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=13180ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13180ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=13180ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13180ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=13180ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=13180ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=13180ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=13180ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13180ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=13180ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13180ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13180ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13180ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=13180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13200ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13200ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13200ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13200ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13200ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13200ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13200ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13200ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13200ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13200ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=13200ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13200ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=13200ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=13200ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13200ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13200ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=13200ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=13200ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13200ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=13200ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=13200ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13200ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=13200ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=13200ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13200ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13200ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13200ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13200ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13220ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13220ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13220ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13220ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13220ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13220ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13220ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13220ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13220ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13220ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=13220ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=13220ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=13220ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13220ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=13220ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=13220ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13220ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=13220ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=13220ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=13220ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13220ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=13220ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13220ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13220ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=13220ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13220ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13240ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13240ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13240ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13240ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13240ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13240ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13240ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13240ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=13240ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13240ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13240ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=13240ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=13240ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13240ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=13240ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13240ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=13240ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=13240ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=13240ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=13240ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13240ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=13240ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13240ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13240ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=13240ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13240ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13260ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13260ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13260ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13260ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13260ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13260ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13260ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13260ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13260ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13260ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13260ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=13260ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=13260ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=13260ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=13260ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=13260ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13260ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=13260ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=13260ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=13260ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=13260ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=13260ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13260ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13260ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13260ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13260ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13280ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13280ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13280ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13280ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13280ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13280ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13280ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13280ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13280ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=13280ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13280ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=13280ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=13280ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=13280ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=13280ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13280ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=13280ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=13280ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=13280ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=13280ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=13280ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13280ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13280ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13280ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=13280ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13300ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13300ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13300ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13300ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13300ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13300ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13300ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13300ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13300ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13300ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=13300ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=13300ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=13300ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=13300ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=13300ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13300ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13300ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=13300ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13300ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=13300ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13300ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=13300ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=13300ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13300ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13300ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=13300ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13300ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13300ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13320ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13320ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13320ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13320ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13320ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13320ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13320ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13320ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13320ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=13320ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13320ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=13320ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=13320ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=13320ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13320ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13320ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13320ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=13320ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=13320ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=13320ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=13320ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=13320ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13320ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13320ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13320ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13320ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13320ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13340ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13340ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13340ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13340ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13340ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13340ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13340ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13340ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13340ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13340ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=13340ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=13340ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=13340ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=13340ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13340ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13340ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13340ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13340ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=13340ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=13340ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=13340ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=13340ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13340ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13340ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=13340ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13340ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13340ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13340ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13360ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13360ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13360ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13360ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13360ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13360ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13360ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=13360ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=13360ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13360ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13360ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=13360ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=13360ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13360ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13360ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=13360ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=13360ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=13360ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=13360ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=13360ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13360ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13360ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=13360ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13360ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=13360ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13380ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13380ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13380ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13380ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13380ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13380ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13380ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13380ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13380ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=13380ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13380ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13380ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=13380ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=13380ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=13380ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=13380ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13380ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13380ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=13380ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=13380ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=13380ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=13380ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=13380ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13380ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13380ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=13380ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13380ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13380ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13400ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13400ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13400ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13400ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13400ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13400ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13400ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13400ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13400ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13400ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=13400ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=13400ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13400ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=13400ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=13400ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=13400ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13400ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13400ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=13400ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=13400ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=13400ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13400ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=13400ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13400ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=13400ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13400ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13400ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13400ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13420ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13420ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13420ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13420ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13420ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13420ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13420ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13420ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13420ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=13420ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=13420ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13420ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=13420ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=13420ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13420ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13420ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13420ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=13420ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=13420ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=13420ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=13420ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=13420ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13420ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13420ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13420ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13420ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13440ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13440ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13440ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=13440ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13440ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13440ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13440ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13440ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13440ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13440ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13440ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=13440ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=13440ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=13440ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=13440ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13440ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=13440ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=13440ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13440ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=13440ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13440ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=13440ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13440ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13440ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=13440ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13440ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13440ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13460ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13460ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13460ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13460ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13460ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13460ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13460ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13460ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13460ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13460ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=13460ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13460ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=13460ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=13460ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=13460ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=13460ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=13460ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13460ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=13460ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=13460ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13460ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=13460ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13460ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13460ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=13460ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13460ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13460ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13480ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13480ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13480ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13480ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13480ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13480ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13480ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13480ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13480ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13480ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13480ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=13480ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=13480ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=13480ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13480ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=13480ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=13480ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=13480ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=13480ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=13480ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13480ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=13480ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13480ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13480ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=13480ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13480ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13480ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13500ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13500ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13500ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13500ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13500ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13500ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13500ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13500ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13500ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13500ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=13500ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=13500ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=13500ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13500ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13500ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=13500ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=13500ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13500ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=13500ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=13500ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=13500ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=13500ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=13500ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13500ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13500ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=13500ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13500ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13500ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13520ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13520ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13520ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13520ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13520ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13520ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13520ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13520ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13520ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13520ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=13520ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=13520ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=13520ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=13520ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13520ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=13520ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13520ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=13520ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=13520ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=13520ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=13520ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13520ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13520ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=13520ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13520ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13520ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13540ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13540ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13540ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13540ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13540ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13540ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13540ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13540ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=13540ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13540ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=13540ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=13540ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=13540ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=13540ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13540ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=13540ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=13540ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13540ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=13540ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13540ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=13540ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=13540ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13540ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=13540ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13560ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13560ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13560ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13560ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13560ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13560ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=13560ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13560ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13560ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13560ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=13560ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13560ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=13560ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13560ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=13560ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=13560ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13560ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13560ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=13560ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=13560ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13560ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=13560ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13560ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=13560ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13560ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13560ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13560ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13580ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13580ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13580ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13580ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13580ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13580ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13580ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13580ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13580ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=13580ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=13580ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13580ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=13580ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=13580ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=13580ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=13580ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13580ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=13580ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=13580ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=13580ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13580ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=13580ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13580ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13580ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=13580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13600ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13600ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13600ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13600ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13600ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13600ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=13600ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13600ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13600ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13600ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13600ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13600ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=13600ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13600ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=13600ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=13600ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=13600ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=13600ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=13600ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=13600ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13600ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13600ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=13600ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13600ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=13600ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13600ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13620ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13620ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13620ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13620ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13620ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13620ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13620ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13620ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13620ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=13620ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=13620ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=13620ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=13620ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13620ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=13620ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=13620ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=13620ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13620ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=13620ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13620ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=13620ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=13620ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13620ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13620ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=13620ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13640ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13640ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13640ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13640ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13640ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=13640ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13640ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13640ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13640ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13640ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=13640ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=13640ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13640ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13640ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13640ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=13640ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=13640ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=13640ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13640ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=13640ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13640ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=13640ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13640ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=13640ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13640ms
fork_0->>philosopher_4: {:fork_granted, :fork_0}
Note over fork_0,philosopher_4: t=13640ms
philosopher_4->>philosopher_4: {:mumble, "I'm full!"}
Note over philosopher_4,philosopher_4: t=13640ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13640ms
philosopher_4->>fork_0: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=13640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13660ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13660ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13660ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13660ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13660ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13660ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13660ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13660ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13660ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=13660ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=13660ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=13660ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13660ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13660ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=13660ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13660ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=13660ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=13660ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=13660ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=13660ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13660ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=13660ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=13660ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13660ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13660ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13660ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13660ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13680ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13680ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13680ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13680ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13680ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13680ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13680ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=13680ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13680ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13680ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13680ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=13680ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13680ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=13680ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=13680ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13680ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=13680ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=13680ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=13680ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=13680ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=13680ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=13680ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13680ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13680ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13680ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13680ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13700ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13700ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13700ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13700ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13700ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13700ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13700ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13700ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13700ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=13700ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13700ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=13700ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=13700ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13700ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=13700ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13700ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13700ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=13700ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=13700ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=13700ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=13700ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=13700ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13700ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13700ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13700ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13700ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13700ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13720ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13720ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13720ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13720ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13720ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13720ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13720ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13720ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=13720ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13720ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13720ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=13720ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=13720ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13720ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=13720ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=13720ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=13720ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13720ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13720ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13720ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=13720ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=13720ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13720ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13720ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=13720ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=13720ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13720ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13720ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13740ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13740ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13740ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13740ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13740ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13740ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13740ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13740ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13740ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=13740ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=13740ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13740ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=13740ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=13740ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13740ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13740ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=13740ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=13740ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=13740ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=13740ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=13740ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13740ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13740ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=13740ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13740ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13740ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13760ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13760ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13760ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13760ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13760ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13760ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13760ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=13760ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13760ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13760ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=13760ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=13760ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13760ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13760ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=13760ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13760ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=13760ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13760ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=13760ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=13760ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13760ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=13760ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=13760ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13760ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13760ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13760ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13760ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13780ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13780ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13780ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13780ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13780ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13780ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=13780ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13780ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13780ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13780ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13780ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13780ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=13780ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=13780ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=13780ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13780ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13780ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=13780ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=13780ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13780ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=13780ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=13780ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13780ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=13780ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13780ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13780ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13780ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13780ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13800ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13800ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13800ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13800ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13800ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13800ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13800ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13800ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13800ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13800ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=13800ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=13800ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=13800ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=13800ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=13800ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=13800ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=13800ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13800ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=13800ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13800ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=13800ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=13800ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13800ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13800ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=13800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13820ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13820ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13820ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13820ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13820ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13820ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13820ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=13820ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=13820ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13820ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13820ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=13820ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13820ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=13820ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13820ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=13820ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=13820ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=13820ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13820ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=13820ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=13820ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13820ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13820ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=13820ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13820ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13820ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13820ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13840ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13840ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13840ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13840ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13840ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13840ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13840ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13840ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=13840ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13840ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13840ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=13840ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=13840ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=13840ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13840ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=13840ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=13840ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13840ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13840ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13840ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13840ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=13840ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=13840ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=13840ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13840ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13840ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13860ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13860ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13860ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13860ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13860ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13860ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13860ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13860ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13860ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=13860ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13860ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=13860ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=13860ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13860ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=13860ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=13860ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13860ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=13860ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=13860ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13860ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=13860ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=13860ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13860ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=13860ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13860ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13860ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13860ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13880ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13880ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13880ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13880ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13880ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13880ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13880ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13880ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13880ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=13880ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13880ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=13880ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=13880ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=13880ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=13880ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=13880ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13880ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=13880ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=13880ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=13880ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=13880ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13880ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13880ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13880ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=13880ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13900ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13900ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13900ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13900ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13900ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13900ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13900ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13900ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13900ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13900ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=13900ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=13900ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=13900ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=13900ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13900ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13900ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13900ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=13900ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=13900ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=13900ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=13900ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=13900ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13900ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13900ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13900ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13900ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13900ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13920ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13920ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13920ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13920ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13920ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13920ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13920ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13920ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13920ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=13920ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=13920ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13920ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=13920ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=13920ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=13920ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=13920ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13920ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=13920ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=13920ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=13920ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=13920ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13920ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13920ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13920ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=13920ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13940ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13940ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13940ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13940ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13940ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13940ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13940ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13940ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13940ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13940ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13940ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=13940ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=13940ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=13940ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=13940ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13940ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13940ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13940ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=13940ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=13940ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=13940ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=13940ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=13940ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13940ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13940ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13940ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13940ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13940ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13960ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13960ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13960ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13960ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13960ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13960ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13960ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13960ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13960ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=13960ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=13960ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13960ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=13960ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=13960ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=13960ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=13960ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13960ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=13960ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=13960ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=13960ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=13960ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13960ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13960ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13960ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=13960ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=13980ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=13980ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=13980ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=13980ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=13980ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13980ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13980ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13980ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=13980ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=13980ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=13980ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=13980ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=13980ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=13980ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=13980ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13980ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13980ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=13980ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=13980ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=13980ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=13980ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=13980ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=13980ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=13980ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=13980ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=13980ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=13980ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=13980ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14000ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14000ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14000ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14000ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14000ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14000ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14000ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14000ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14000ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=14000ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=14000ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14000ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=14000ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=14000ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14000ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=14000ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14000ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=14000ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=14000ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=14000ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=14000ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14000ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14000ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14000ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14000ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14020ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14020ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14020ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14020ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14020ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14020ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14020ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14020ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14020ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14020ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14020ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=14020ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=14020ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=14020ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=14020ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14020ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14020ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=14020ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=14020ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=14020ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=14020ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=14020ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=14020ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14020ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14020ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14020ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14020ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14020ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14040ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14040ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14040ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14040ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14040ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14040ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14040ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14040ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14040ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=14040ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=14040ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14040ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=14040ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=14040ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14040ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=14040ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14040ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=14040ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=14040ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=14040ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=14040ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14040ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14040ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14040ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14040ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14060ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14060ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14060ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14060ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14060ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14060ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14060ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14060ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14060ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14060ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14060ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=14060ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=14060ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=14060ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=14060ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14060ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14060ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=14060ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=14060ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=14060ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=14060ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=14060ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=14060ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14060ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14060ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14060ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14060ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14060ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14080ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14080ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14080ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14080ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14080ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14080ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14080ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14080ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14080ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=14080ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=14080ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14080ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=14080ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=14080ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14080ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=14080ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14080ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=14080ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=14080ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=14080ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=14080ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14080ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14080ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14080ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14080ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14100ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14100ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14100ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14100ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14100ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14100ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14100ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14100ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14100ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14100ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=14100ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=14100ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=14100ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=14100ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14100ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14100ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=14100ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=14100ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=14100ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=14100ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=14100ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=14100ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14100ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14100ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14100ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14100ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14100ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14120ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14120ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14120ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14120ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14120ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14120ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14120ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14120ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14120ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=14120ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=14120ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14120ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=14120ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=14120ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14120ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=14120ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14120ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=14120ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=14120ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=14120ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=14120ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14120ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14120ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14120ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14120ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14140ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14140ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14140ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14140ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14140ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14140ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14140ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14140ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14140ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14140ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14140ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=14140ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=14140ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=14140ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=14140ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14140ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14140ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=14140ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=14140ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=14140ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=14140ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=14140ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=14140ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14140ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14140ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14140ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14140ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14140ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14160ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14160ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14160ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14160ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14160ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14160ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14160ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14160ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14160ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14160ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=14160ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=14160ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14160ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=14160ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=14160ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14160ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=14160ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14160ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=14160ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=14160ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=14160ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=14160ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14160ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14160ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14160ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14160ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14180ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14180ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14180ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14180ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14180ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14180ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14180ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14180ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14180ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14180ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=14180ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=14180ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=14180ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=14180ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14180ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14180ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=14180ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=14180ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=14180ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=14180ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=14180ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=14180ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14180ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14180ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14180ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14180ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14180ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14200ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14200ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14200ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14200ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14200ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14200ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14200ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14200ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14200ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14200ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=14200ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=14200ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14200ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=14200ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=14200ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14200ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=14200ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14200ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=14200ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=14200ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=14200ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=14200ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14200ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14200ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14200ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14200ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14220ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14220ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14220ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14220ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14220ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14220ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14220ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14220ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14220ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14220ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=14220ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=14220ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=14220ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=14220ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14220ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14220ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=14220ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=14220ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=14220ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=14220ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=14220ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=14220ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14220ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14220ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14220ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14220ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14220ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14240ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14240ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14240ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14240ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14240ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14240ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14240ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14240ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14240ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=14240ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=14240ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14240ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=14240ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=14240ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=14240ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14240ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14240ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=14240ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=14240ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=14240ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=14240ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=14240ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14240ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14240ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14240ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=14240ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14260ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14260ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14260ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14260ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14260ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14260ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14260ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14260ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14260ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14260ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=14260ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14260ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=14260ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=14260ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=14260ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=14260ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14260ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14260ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=14260ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=14260ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=14260ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14260ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=14260ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=14260ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14260ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14260ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14260ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14260ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14280ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14280ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14280ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14280ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14280ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14280ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14280ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14280ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14280ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=14280ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=14280ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14280ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=14280ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=14280ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14280ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=14280ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14280ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=14280ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=14280ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=14280ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=14280ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=14280ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14280ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14280ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14280ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14280ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=14280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14300ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14300ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14300ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14300ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14300ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14300ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14300ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14300ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14300ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=14300ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14300ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=14300ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=14300ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=14300ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=14300ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14300ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14300ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=14300ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=14300ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=14300ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14300ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=14300ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=14300ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14300ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14300ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14300ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14300ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14320ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14320ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14320ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14320ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14320ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14320ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14320ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14320ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14320ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=14320ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=14320ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14320ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=14320ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=14320ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14320ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=14320ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14320ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=14320ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=14320ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=14320ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=14320ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=14320ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14320ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14320ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14320ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14320ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=14320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14340ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14340ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14340ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14340ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14340ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14340ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14340ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14340ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14340ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14340ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=14340ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14340ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=14340ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=14340ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=14340ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=14340ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14340ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14340ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=14340ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=14340ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=14340ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14340ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=14340ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=14340ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14340ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14340ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14340ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14340ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14360ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14360ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14360ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14360ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14360ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14360ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14360ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14360ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14360ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=14360ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=14360ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14360ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=14360ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=14360ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14360ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=14360ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14360ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=14360ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=14360ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=14360ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=14360ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=14360ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14360ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14360ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14360ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14360ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=14360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14380ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14380ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14380ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14380ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14380ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14380ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14380ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14380ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14380ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14380ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=14380ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14380ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=14380ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=14380ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=14380ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=14380ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14380ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14380ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=14380ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=14380ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=14380ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14380ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=14380ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=14380ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14380ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14380ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14380ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14380ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14400ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14400ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14400ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14400ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14400ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14400ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14400ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14400ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14400ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=14400ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=14400ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14400ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=14400ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=14400ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14400ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=14400ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14400ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=14400ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=14400ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=14400ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=14400ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=14400ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14400ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14400ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14400ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14400ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=14400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14420ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14420ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14420ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14420ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14420ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14420ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14420ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14420ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14420ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=14420ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14420ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=14420ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=14420ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=14420ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=14420ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14420ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14420ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=14420ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=14420ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=14420ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14420ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=14420ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=14420ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14420ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14420ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14420ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14420ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14440ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14440ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14440ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14440ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14440ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14440ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14440ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14440ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14440ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=14440ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=14440ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14440ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=14440ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=14440ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14440ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=14440ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14440ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=14440ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=14440ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=14440ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=14440ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=14440ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14440ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14440ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14440ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=14440ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14460ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14460ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14460ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14460ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14460ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14460ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14460ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14460ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14460ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=14460ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14460ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=14460ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=14460ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=14460ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=14460ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14460ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14460ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=14460ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=14460ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=14460ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14460ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=14460ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=14460ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14460ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14460ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14460ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14460ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14480ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14480ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14480ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14480ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14480ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14480ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14480ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14480ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14480ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=14480ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=14480ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14480ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=14480ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=14480ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14480ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=14480ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14480ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=14480ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=14480ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=14480ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=14480ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=14480ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14480ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14480ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14480ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14480ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=14480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14500ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14500ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14500ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14500ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14500ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14500ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14500ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14500ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14500ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14500ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=14500ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14500ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=14500ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=14500ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=14500ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=14500ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14500ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14500ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=14500ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=14500ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=14500ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14500ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=14500ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=14500ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14500ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14500ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14500ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14500ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14520ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14520ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14520ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14520ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14520ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14520ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14520ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14520ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14520ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=14520ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=14520ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=14520ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14520ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=14520ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14520ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=14520ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14520ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=14520ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=14520ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=14520ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=14520ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=14520ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14520ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14520ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14520ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14520ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=14520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14540ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14540ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14540ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14540ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14540ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14540ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14540ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14540ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14540ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=14540ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14540ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=14540ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=14540ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=14540ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=14540ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14540ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14540ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=14540ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=14540ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=14540ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14540ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=14540ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=14540ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14540ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14540ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14540ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14540ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14560ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14560ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14560ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14560ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14560ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14560ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14560ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14560ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14560ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=14560ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=14560ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14560ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=14560ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=14560ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14560ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=14560ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14560ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=14560ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=14560ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=14560ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=14560ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=14560ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14560ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14560ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14560ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14560ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=14560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14580ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14580ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14580ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14580ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14580ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14580ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14580ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14580ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14580ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=14580ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14580ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=14580ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=14580ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=14580ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=14580ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14580ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14580ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=14580ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=14580ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=14580ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14580ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=14580ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=14580ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14580ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14580ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14580ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14580ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14600ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14600ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14600ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14600ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14600ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14600ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14600ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14600ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14600ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=14600ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=14600ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14600ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=14600ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=14600ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14600ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=14600ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14600ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=14600ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=14600ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=14600ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=14600ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=14600ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14600ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14600ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14600ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14600ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=14600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14620ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14620ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14620ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14620ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14620ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14620ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14620ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14620ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14620ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=14620ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14620ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=14620ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=14620ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=14620ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=14620ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14620ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14620ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=14620ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=14620ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=14620ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=14620ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14620ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14620ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=14620ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14620ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14620ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14620ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14640ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14640ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14640ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14640ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14640ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14640ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14640ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=14640ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14640ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14640ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14640ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=14640ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=14640ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=14640ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14640ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=14640ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=14640ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=14640ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14640ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14640ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=14640ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14640ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=14640ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=14640ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14640ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14640ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=14640ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14660ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14660ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14660ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14660ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14660ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14660ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14660ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14660ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14660ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14660ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=14660ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14660ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=14660ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=14660ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14660ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=14660ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14660ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=14660ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=14660ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=14660ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=14660ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=14660ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14660ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14660ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=14660ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14660ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14660ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14660ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14680ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14680ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14680ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14680ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14680ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14680ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14680ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14680ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14680ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=14680ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=14680ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=14680ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14680ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14680ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=14680ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14680ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=14680ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=14680ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=14680ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=14680ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14680ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=14680ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14680ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14680ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=14680ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14680ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=14680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14700ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14700ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14700ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14700ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14700ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14700ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14700ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14700ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14700ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=14700ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14700ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14700ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=14700ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=14700ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=14700ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=14700ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14700ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=14700ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=14700ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14700ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14700ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=14700ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=14700ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=14700ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14700ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14700ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14700ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14720ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14720ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14720ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14720ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=14720ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=14720ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14720ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14720ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14720ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14720ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14720ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14720ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=14720ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14720ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14720ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=14720ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=14720ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14720ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=14720ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14720ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=14720ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=14720ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=14720ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=14720ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14720ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=14720ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14720ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=14720ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14720ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14740ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14740ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14740ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14740ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=14740ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14740ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14740ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14740ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=14740ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=14740ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=14740ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14740ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14740ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14740ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14740ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14740ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14740ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14740ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14740ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=14740ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14740ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=14740ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=14740ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=14740ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=14740ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=14740ms
fork_0->>philosopher_4: {:fork_granted, :fork_0}
Note over fork_0,philosopher_4: t=14740ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14740ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14740ms
philosopher_4->>philosopher_4: {:mumble, "I'm full!"}
Note over philosopher_4,philosopher_4: t=14740ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14740ms
philosopher_4->>fork_0: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=14740ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14760ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14760ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14760ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=14760ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=14760ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=14760ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14760ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14760ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14760ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=14760ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14760ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=14760ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14760ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14760ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14760ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14760ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=14760ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=14760ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=14760ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14760ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14760ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=14760ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=14760ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=14760ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=14760ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14760ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14760ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14760ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14760ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14780ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14780ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14780ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14780ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14780ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14780ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14780ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14780ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14780ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=14780ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=14780ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14780ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=14780ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=14780ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=14780ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14780ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=14780ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14780ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=14780ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14780ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=14780ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14780ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=14780ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14780ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14780ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14800ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14800ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14800ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14800ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14800ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14800ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14800ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14800ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14800ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=14800ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=14800ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=14800ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=14800ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14800ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14800ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=14800ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14800ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=14800ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=14800ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=14800ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=14800ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14800ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14800ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14800ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=14800ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14800ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14800ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14820ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14820ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14820ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14820ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14820ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14820ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14820ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=14820ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14820ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14820ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14820ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=14820ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14820ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=14820ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14820ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=14820ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=14820ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=14820ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=14820ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=14820ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14820ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14820ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=14820ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14820ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14820ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14840ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14840ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14840ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14840ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14840ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14840ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14840ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14840ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14840ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=14840ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=14840ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=14840ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=14840ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14840ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14840ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=14840ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14840ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=14840ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=14840ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=14840ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=14840ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=14840ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14840ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14840ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14840ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14840ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14840ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14860ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14860ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14860ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14860ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14860ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14860ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14860ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=14860ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14860ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14860ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14860ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=14860ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14860ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=14860ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=14860ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14860ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=14860ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=14860ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=14860ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=14860ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14860ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14860ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=14860ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14860ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14860ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14880ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14880ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14880ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14880ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14880ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14880ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14880ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14880ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14880ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14880ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=14880ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14880ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=14880ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=14880ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=14880ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=14880ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=14880ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14880ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=14880ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=14880ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=14880ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14880ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14880ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=14880ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14880ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14880ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14880ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14900ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14900ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14900ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14900ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14900ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14900ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14900ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14900ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14900ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14900ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=14900ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14900ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=14900ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=14900ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=14900ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14900ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=14900ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14900ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=14900ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=14900ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=14900ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14900ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14900ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=14900ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=14900ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14900ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14900ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14900ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14920ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14920ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14920ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14920ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14920ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14920ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=14920ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14920ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14920ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=14920ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=14920ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14920ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14920ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14920ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=14920ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14920ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=14920ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14920ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=14920ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=14920ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=14920ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14920ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=14920ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14920ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=14920ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14920ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14920ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14940ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14940ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14940ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14940ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14940ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14940ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14940ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14940ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14940ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14940ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=14940ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=14940ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14940ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=14940ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=14940ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=14940ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14940ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=14940ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14940ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=14940ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14940ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=14940ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=14940ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14940ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=14940ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14940ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14940ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14940ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14960ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14960ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14960ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14960ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14960ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14960ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14960ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14960ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14960ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14960ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=14960ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=14960ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=14960ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14960ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=14960ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=14960ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=14960ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=14960ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=14960ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=14960ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14960ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14960ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=14960ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14960ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=14960ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14960ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=14960ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=14980ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=14980ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=14980ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=14980ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=14980ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14980ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=14980ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14980ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14980ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=14980ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=14980ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=14980ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=14980ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=14980ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14980ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=14980ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=14980ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14980ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=14980ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=14980ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=14980ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=14980ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=14980ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=14980ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=14980ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=14980ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=14980ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=14980ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15000ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15000ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15000ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15000ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15000ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15000ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15000ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15000ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15000ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=15000ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15000ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15000ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=15000ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=15000ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15000ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=15000ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=15000ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15000ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=15000ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=15000ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=15000ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15000ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=15000ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15000ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15000ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15000ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15000ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15020ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15020ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15020ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15020ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15020ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15020ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15020ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15020ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15020ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15020ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=15020ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15020ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=15020ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=15020ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=15020ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15020ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15020ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15020ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=15020ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=15020ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=15020ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=15020ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=15020ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15020ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15020ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15020ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15020ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15020ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15040ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15040ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15040ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15040ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15040ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15040ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15040ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15040ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=15040ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15040ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=15040ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=15040ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15040ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15040ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=15040ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=15040ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15040ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=15040ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=15040ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=15040ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=15040ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=15040ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15040ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15040ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15040ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15040ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15040ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15060ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15060ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15060ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15060ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15060ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15060ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15060ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15060ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15060ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15060ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=15060ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15060ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=15060ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15060ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=15060ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=15060ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=15060ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15060ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=15060ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15060ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15060ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15060ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=15060ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=15060ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=15060ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15060ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15060ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15060ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15080ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15080ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15080ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15080ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15080ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15080ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15080ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15080ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15080ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=15080ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=15080ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15080ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=15080ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=15080ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=15080ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=15080ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15080ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=15080ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=15080ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=15080ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=15080ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=15080ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15080ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=15080ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15080ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15080ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15080ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15100ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15100ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15100ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15100ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15100ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15100ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15100ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15100ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=15100ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15100ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=15100ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=15100ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=15100ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=15100ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15100ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15100ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=15100ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=15100ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15100ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15100ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=15100ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15100ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15100ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=15100ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15100ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15120ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15120ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15120ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15120ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15120ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15120ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15120ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15120ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15120ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15120ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=15120ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=15120ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=15120ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=15120ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15120ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=15120ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15120ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=15120ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=15120ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=15120ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=15120ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=15120ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15120ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15120ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15120ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15120ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=15120ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15140ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15140ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15140ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15140ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15140ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15140ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15140ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15140ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15140ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15140ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=15140ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15140ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=15140ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=15140ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15140ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=15140ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=15140ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=15140ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15140ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=15140ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=15140ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=15140ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15140ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15140ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15140ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15140ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15160ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15160ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15160ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15160ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15160ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=15160ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15160ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15160ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15160ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15160ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=15160ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15160ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15160ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=15160ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15160ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15160ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=15160ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=15160ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=15160ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15160ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=15160ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15160ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=15160ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15160ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=15160ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15160ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15160ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15160ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15180ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15180ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15180ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15180ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15180ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15180ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15180ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15180ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15180ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15180ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=15180ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=15180ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=15180ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=15180ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15180ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=15180ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15180ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=15180ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=15180ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=15180ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=15180ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=15180ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15180ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15180ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15180ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15180ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=15180ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15200ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15200ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15200ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15200ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15200ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15200ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15200ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15200ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15200ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15200ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=15200ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=15200ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15200ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15200ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15200ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=15200ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15200ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=15200ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=15200ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=15200ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=15200ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=15200ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15200ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15200ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15200ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=15200ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15200ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15200ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15220ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15220ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15220ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15220ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15220ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15220ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15220ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15220ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15220ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=15220ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15220ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=15220ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=15220ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=15220ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=15220ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15220ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=15220ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=15220ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=15220ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15220ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=15220ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=15220ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=15220ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15220ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15220ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15220ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=15220ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15240ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15240ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15240ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15240ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15240ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15240ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=15240ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15240ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15240ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15240ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15240ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15240ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=15240ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=15240ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=15240ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=15240ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=15240ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15240ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15240ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15240ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15240ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=15240ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=15240ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15240ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=15240ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15240ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15240ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15260ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15260ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15260ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15260ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15260ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15260ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15260ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15260ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15260ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=15260ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15260ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15260ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=15260ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15260ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=15260ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=15260ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=15260ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15260ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=15260ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=15260ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=15260ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=15260ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15260ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15260ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15260ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15260ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15280ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15280ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15280ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15280ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15280ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15280ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15280ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15280ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15280ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=15280ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15280ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=15280ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=15280ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=15280ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15280ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15280ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15280ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=15280ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=15280ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=15280ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15280ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=15280ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15280ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=15280ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15280ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15280ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15300ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15300ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15300ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15300ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15300ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15300ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15300ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15300ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15300ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=15300ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=15300ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15300ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=15300ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=15300ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15300ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=15300ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15300ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=15300ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=15300ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=15300ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15300ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=15300ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15300ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15300ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15300ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15320ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15320ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15320ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15320ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15320ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15320ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15320ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15320ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15320ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=15320ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15320ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15320ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=15320ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=15320ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=15320ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15320ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15320ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=15320ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=15320ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=15320ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=15320ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15320ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=15320ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=15320ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15320ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=15320ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=15320ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15320ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15320ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15340ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15340ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15340ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15340ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15340ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15340ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15340ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15340ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=15340ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15340ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15340ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=15340ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15340ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=15340ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15340ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=15340ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=15340ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15340ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=15340ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15340ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15340ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=15340ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=15340ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15340ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=15340ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=15340ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15340ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15340ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15360ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15360ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15360ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15360ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15360ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15360ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15360ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=15360ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15360ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=15360ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=15360ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=15360ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15360ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=15360ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=15360ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15360ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15360ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=15360ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=15360ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15360ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15360ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15360ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=15360ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=15360ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=15360ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15360ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15360ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15380ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15380ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15380ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15380ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15380ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15380ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15380ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15380ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15380ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15380ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=15380ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=15380ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15380ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=15380ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=15380ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=15380ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15380ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=15380ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15380ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15380ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=15380ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=15380ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=15380ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15380ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15380ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15380ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15400ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15400ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15400ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15400ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15400ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15400ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15400ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15400ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=15400ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15400ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=15400ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=15400ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=15400ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15400ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=15400ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=15400ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15400ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=15400ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15400ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=15400ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=15400ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=15400ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=15400ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15400ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15400ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=15400ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15400ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15420ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15420ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15420ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15420ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15420ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15420ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15420ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15420ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15420ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15420ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15420ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=15420ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=15420ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=15420ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=15420ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15420ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15420ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15420ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=15420ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=15420ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=15420ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=15420ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=15420ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15420ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15420ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15420ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15420ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15420ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15440ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15440ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15440ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15440ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15440ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=15440ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15440ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15440ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15440ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15440ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15440ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=15440ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=15440ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15440ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=15440ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=15440ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15440ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=15440ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15440ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15440ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=15440ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15440ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=15440ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15440ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15440ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=15440ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15440ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15460ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15460ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15460ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15460ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15460ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15460ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15460ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15460ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15460ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15460ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15460ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=15460ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=15460ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=15460ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15460ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=15460ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=15460ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=15460ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=15460ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=15460ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=15460ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=15460ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15460ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15460ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=15460ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15460ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15460ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=15460ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15480ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15480ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15480ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15480ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15480ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15480ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15480ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=15480ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15480ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15480ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=15480ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=15480ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15480ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15480ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=15480ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15480ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15480ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=15480ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=15480ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=15480ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=15480ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15480ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=15480ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15480ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15480ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15480ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15480ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15500ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15500ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15500ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15500ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15500ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15500ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15500ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15500ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15500ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15500ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15500ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=15500ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=15500ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15500ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=15500ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=15500ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=15500ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15500ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=15500ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=15500ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=15500ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15500ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=15500ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15500ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15500ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15500ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15520ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15520ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15520ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15520ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15520ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15520ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15520ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15520ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=15520ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15520ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=15520ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15520ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=15520ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=15520ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=15520ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15520ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=15520ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15520ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=15520ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=15520ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15520ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=15520ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=15520ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=15520ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15520ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=15520ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15520ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15540ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15540ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15540ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15540ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15540ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=15540ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15540ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=15540ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15540ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15540ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15540ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15540ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=15540ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=15540ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=15540ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15540ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=15540ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=15540ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=15540ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15540ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=15540ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=15540ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=15540ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15540ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15540ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=15540ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15560ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15560ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15560ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15560ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15560ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15560ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15560ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15560ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15560ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=15560ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=15560ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15560ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15560ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15560ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15560ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=15560ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=15560ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=15560ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=15560ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15560ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=15560ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=15560ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15560ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15560ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=15560ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15560ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=15560ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15560ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15560ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15580ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15580ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15580ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15580ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15580ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=15580ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15580ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15580ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15580ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15580ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15580ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15580ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=15580ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=15580ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15580ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=15580ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=15580ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=15580ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=15580ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=15580ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=15580ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=15580ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15580ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15580ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15580ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15580ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15580ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15600ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15600ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15600ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15600ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15600ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15600ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15600ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15600ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15600ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15600ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=15600ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=15600ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=15600ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15600ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=15600ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=15600ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=15600ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=15600ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=15600ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=15600ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=15600ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=15600ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15600ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15600ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15600ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15600ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=15600ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15620ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15620ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15620ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15620ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15620ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15620ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=15620ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15620ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15620ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15620ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=15620ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=15620ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15620ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=15620ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15620ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15620ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=15620ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15620ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=15620ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=15620ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15620ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=15620ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=15620ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15620ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15620ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15620ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15620ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15640ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15640ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15640ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15640ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15640ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15640ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15640ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15640ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15640ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=15640ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15640ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=15640ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15640ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=15640ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=15640ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=15640ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15640ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=15640ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=15640ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15640ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15640ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15640ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=15640ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=15640ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15640ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15660ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15660ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15660ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15660ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15660ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15660ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15660ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15660ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15660ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=15660ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=15660ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=15660ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15660ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15660ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=15660ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15660ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=15660ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15660ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=15660ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=15660ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=15660ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15660ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=15660ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15660ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15660ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15660ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15660ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15680ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15680ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15680ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15680ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15680ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15680ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15680ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15680ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15680ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15680ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15680ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=15680ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=15680ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=15680ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=15680ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=15680ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=15680ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15680ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=15680ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=15680ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15680ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=15680ms
fork_0->>philosopher_4: {:fork_granted, :fork_0}
Note over fork_0,philosopher_4: t=15680ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=15680ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15680ms
philosopher_4->>philosopher_4: {:mumble, "I'm full!"}
Note over philosopher_4,philosopher_4: t=15680ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=15680ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15680ms
philosopher_4->>fork_0: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=15680ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15700ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15700ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15700ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15700ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15700ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15700ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15700ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15700ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15700ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=15700ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=15700ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=15700ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15700ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15700ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15700ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=15700ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15700ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=15700ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=15700ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=15700ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=15700ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=15700ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15700ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15700ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15700ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15700ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15700ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15720ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15720ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15720ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15720ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15720ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15720ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15720ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15720ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15720ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=15720ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=15720ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15720ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=15720ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15720ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=15720ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15720ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=15720ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15720ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=15720ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=15720ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=15720ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=15720ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15720ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15720ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15720ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15720ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15740ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15740ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15740ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15740ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15740ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15740ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15740ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15740ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15740ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15740ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=15740ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=15740ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15740ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=15740ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=15740ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15740ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15740ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=15740ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15740ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=15740ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=15740ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=15740ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=15740ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=15740ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15740ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15740ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15740ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15760ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15760ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15760ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15760ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15760ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15760ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15760ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15760ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=15760ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15760ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=15760ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15760ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=15760ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=15760ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=15760ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15760ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=15760ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15760ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=15760ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=15760ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15760ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=15760ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=15760ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=15760ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15760ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15760ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15780ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15780ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15780ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15780ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15780ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15780ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15780ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=15780ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15780ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15780ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15780ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15780ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15780ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=15780ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=15780ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15780ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=15780ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=15780ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=15780ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=15780ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=15780ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=15780ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15780ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15780ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15780ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15780ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15780ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15800ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15800ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15800ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15800ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15800ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15800ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15800ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15800ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15800ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=15800ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=15800ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=15800ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=15800ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15800ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=15800ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=15800ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15800ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15800ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=15800ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15800ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=15800ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=15800ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=15800ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15800ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15800ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=15800ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15820ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15820ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15820ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15820ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=15820ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=15820ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=15820ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15820ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15820ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15820ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15820ms
fork_0->>philosopher_4: {:fork_granted, :fork_0}
Note over fork_0,philosopher_4: t=15820ms
fork_0->>philosopher_0: {:fork_denied, :fork_0}
Note over fork_0,philosopher_0: t=15820ms
philosopher_4->>philosopher_4: {:mumble, "I'm full!"}
Note over philosopher_4,philosopher_4: t=15820ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15820ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15820ms
philosopher_4->>fork_0: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=15820ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=15820ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=15820ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15820ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=15820ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=15820ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15820ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15840ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15840ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15840ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15840ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15840ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15840ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15840ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15840ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15840ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=15840ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=15840ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15840ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=15840ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=15840ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15840ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=15840ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15840ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=15840ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=15840ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=15840ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=15840ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=15840ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15860ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15860ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15860ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15860ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15860ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15860ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15860ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15860ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15860ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15860ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15860ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15860ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=15860ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=15860ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15860ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=15860ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15860ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15860ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=15860ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15860ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=15860ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=15860ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=15860ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15860ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15860ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=15860ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=15860ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15860ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15860ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15860ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15880ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15880ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15880ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15880ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15880ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15880ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15880ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15880ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15880ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15880ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=15880ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=15880ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=15880ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=15880ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15880ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15880ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=15880ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=15880ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=15880ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=15880ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=15880ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=15880ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15880ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15880ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15880ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15880ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15900ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15900ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15900ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15900ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15900ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15900ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15900ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15900ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15900ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=15900ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=15900ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15900ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=15900ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=15900ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=15900ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15900ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15900ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=15900ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=15900ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=15900ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15900ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=15900ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15900ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15900ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15900ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15920ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15920ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15920ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15920ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15920ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15920ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15920ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15920ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15920ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15920ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=15920ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=15920ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=15920ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=15920ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15920ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15920ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=15920ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=15920ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=15920ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=15920ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=15920ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=15920ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15920ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15920ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15920ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15920ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15940ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15940ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15940ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15940ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15940ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15940ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15940ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15940ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15940ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15940ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=15940ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=15940ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15940ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=15940ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=15940ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=15940ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15940ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15940ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=15940ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=15940ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=15940ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15940ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=15940ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15940ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15940ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15940ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15960ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15960ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15960ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15960ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15960ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15960ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15960ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15960ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15960ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15960ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=15960ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=15960ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=15960ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=15960ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15960ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15960ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=15960ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=15960ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=15960ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=15960ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=15960ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=15960ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15960ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15960ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15960ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15960ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=15960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=15980ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=15980ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=15980ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=15980ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=15980ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15980ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15980ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=15980ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=15980ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15980ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=15980ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=15980ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=15980ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=15980ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=15980ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=15980ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15980ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=15980ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=15980ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=15980ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=15980ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=15980ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=15980ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=15980ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=15980ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=15980ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16000ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16000ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16000ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16000ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16000ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16000ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16000ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16000ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16000ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16000ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=16000ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=16000ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=16000ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=16000ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16000ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16000ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=16000ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=16000ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=16000ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=16000ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=16000ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=16000ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16000ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16000ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16000ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16000ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16020ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16020ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16020ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16020ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16020ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16020ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16020ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16020ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16020ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16020ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=16020ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=16020ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16020ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=16020ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=16020ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=16020ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16020ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16020ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=16020ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=16020ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=16020ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16020ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=16020ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16020ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16020ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16020ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16040ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16040ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16040ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16040ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16040ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16040ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16040ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16040ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16040ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=16040ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16040ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=16040ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=16040ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=16040ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=16040ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16040ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=16040ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=16040ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=16040ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=16040ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16040ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=16040ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=16040ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16040ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16040ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16040ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=16040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16060ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16060ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16060ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16060ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16060ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16060ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16060ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16060ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16060ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16060ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=16060ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=16060ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16060ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=16060ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=16060ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=16060ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16060ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16060ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=16060ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=16060ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=16060ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16060ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=16060ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16060ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16060ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16060ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16080ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16080ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16080ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16080ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16080ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16080ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16080ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16080ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16080ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16080ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=16080ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=16080ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=16080ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=16080ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16080ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16080ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=16080ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=16080ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=16080ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=16080ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=16080ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=16080ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16080ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16080ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16080ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16080ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16100ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16100ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16100ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16100ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16100ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16100ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16100ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16100ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16100ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=16100ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=16100ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16100ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=16100ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=16100ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=16100ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16100ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16100ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=16100ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=16100ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=16100ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16100ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=16100ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16100ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16100ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16100ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16120ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16120ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16120ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16120ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16120ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16120ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16120ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16120ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16120ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16120ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=16120ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=16120ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=16120ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=16120ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16120ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16120ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=16120ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=16120ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=16120ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=16120ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=16120ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=16120ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16120ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16120ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16120ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16120ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16140ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16140ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16140ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16140ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16140ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16140ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16140ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16140ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16140ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16140ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=16140ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=16140ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16140ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=16140ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=16140ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=16140ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16140ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16140ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=16140ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=16140ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=16140ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16140ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=16140ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16140ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16140ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16140ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16160ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16160ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16160ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16160ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16160ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16160ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16160ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16160ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16160ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16160ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16160ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=16160ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=16160ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=16160ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=16160ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16160ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16160ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=16160ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=16160ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=16160ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=16160ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=16160ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=16160ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16160ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16160ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16160ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16160ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16160ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16180ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16180ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16180ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16180ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16180ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16180ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16180ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16180ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16180ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=16180ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=16180ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16180ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=16180ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=16180ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=16180ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=16180ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16180ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=16180ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=16180ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=16180ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16180ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=16180ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=16180ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16180ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16180ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=16180ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16180ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16200ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16200ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16200ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16200ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16200ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16200ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16200ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16200ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16200ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16200ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16200ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=16200ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=16200ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=16200ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=16200ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16200ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16200ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=16200ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=16200ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=16200ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=16200ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=16200ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=16200ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16200ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16200ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16200ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16200ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16200ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16220ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16220ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16220ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16220ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16220ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16220ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16220ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16220ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16220ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=16220ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=16220ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16220ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=16220ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=16220ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=16220ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16220ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16220ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=16220ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=16220ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=16220ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16220ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=16220ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16220ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16220ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16220ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16240ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16240ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16240ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16240ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16240ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16240ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16240ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16240ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16240ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16240ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=16240ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=16240ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=16240ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=16240ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16240ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16240ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=16240ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=16240ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=16240ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=16240ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=16240ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=16240ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16240ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16240ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16240ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16240ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16260ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16260ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16260ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16260ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16260ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16260ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16260ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16260ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16260ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16260ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=16260ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=16260ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16260ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=16260ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=16260ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=16260ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16260ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16260ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=16260ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=16260ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=16260ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16260ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=16260ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16260ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16260ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16260ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16280ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16280ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16280ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16280ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16280ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16280ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16280ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16280ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16280ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16280ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=16280ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=16280ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=16280ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=16280ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16280ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16280ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=16280ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=16280ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=16280ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=16280ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=16280ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=16280ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16280ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16280ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16280ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16280ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16300ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16300ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16300ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16300ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16300ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16300ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16300ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16300ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16300ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=16300ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=16300ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16300ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=16300ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=16300ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=16300ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16300ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16300ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=16300ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=16300ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=16300ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16300ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=16300ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16300ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16300ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16300ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16320ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16320ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16320ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16320ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16320ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16320ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16320ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16320ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16320ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16320ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=16320ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=16320ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=16320ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=16320ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16320ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16320ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=16320ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=16320ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=16320ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=16320ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=16320ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=16320ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16320ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16320ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16320ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16320ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16340ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16340ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16340ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16340ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16340ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16340ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16340ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16340ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16340ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16340ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=16340ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=16340ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16340ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=16340ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=16340ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=16340ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16340ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16340ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=16340ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=16340ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=16340ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16340ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=16340ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16340ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16340ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16340ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16360ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16360ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16360ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16360ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16360ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16360ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16360ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16360ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16360ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16360ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=16360ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=16360ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=16360ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=16360ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16360ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16360ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=16360ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=16360ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=16360ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=16360ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=16360ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=16360ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16360ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16360ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16360ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16360ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16380ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16380ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16380ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16380ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16380ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16380ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16380ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16380ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16380ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16380ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=16380ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=16380ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16380ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=16380ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=16380ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=16380ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16380ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16380ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=16380ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=16380ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=16380ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16380ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=16380ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16380ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16380ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16380ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16400ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16400ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16400ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16400ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16400ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16400ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16400ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16400ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16400ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16400ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=16400ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=16400ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=16400ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=16400ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16400ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16400ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=16400ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=16400ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=16400ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=16400ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=16400ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=16400ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16400ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16400ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16400ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16400ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16420ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16420ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16420ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16420ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16420ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16420ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16420ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16420ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16420ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=16420ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=16420ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16420ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=16420ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=16420ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=16420ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16420ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16420ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=16420ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=16420ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=16420ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16420ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=16420ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16420ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16420ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16420ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16440ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16440ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16440ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16440ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16440ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16440ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16440ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16440ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16440ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16440ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=16440ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=16440ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=16440ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=16440ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16440ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16440ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=16440ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=16440ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=16440ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=16440ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=16440ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=16440ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16440ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16440ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16440ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16440ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16460ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16460ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16460ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16460ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16460ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16460ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16460ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16460ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16460ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=16460ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=16460ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16460ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=16460ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=16460ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=16460ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16460ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16460ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=16460ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=16460ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=16460ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16460ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=16460ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16460ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16460ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16460ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16480ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16480ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16480ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16480ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16480ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16480ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16480ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16480ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16480ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16480ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=16480ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=16480ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=16480ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=16480ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16480ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16480ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=16480ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=16480ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=16480ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=16480ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=16480ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=16480ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16480ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16480ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16480ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16480ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16500ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16500ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16500ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16500ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16500ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16500ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16500ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16500ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16500ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16500ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=16500ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=16500ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=16500ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=16500ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16500ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=16500ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16500ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16500ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=16500ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=16500ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=16500ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16500ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=16500ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16500ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16500ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16500ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16520ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16520ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16520ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16520ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16520ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16520ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16520ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16520ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16520ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16520ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=16520ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=16520ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=16520ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=16520ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16520ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16520ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=16520ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=16520ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=16520ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=16520ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=16520ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=16520ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16520ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16520ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16520ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16520ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16540ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16540ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16540ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16540ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16540ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16540ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16540ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16540ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16540ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=16540ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=16540ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16540ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=16540ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=16540ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=16540ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16540ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16540ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=16540ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=16540ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=16540ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16540ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=16540ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16540ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16540ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16540ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16560ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16560ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16560ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16560ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16560ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16560ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16560ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16560ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16560ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16560ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=16560ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=16560ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=16560ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=16560ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16560ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16560ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=16560ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=16560ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=16560ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=16560ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=16560ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=16560ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16560ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16560ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16560ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16560ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16580ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16580ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16580ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16580ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16580ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16580ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16580ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16580ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16580ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=16580ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=16580ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16580ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=16580ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=16580ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=16580ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16580ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16580ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=16580ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=16580ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=16580ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16580ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=16580ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16580ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16580ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16580ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16600ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16600ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16600ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16600ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16600ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16600ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16600ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16600ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16600ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16600ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=16600ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=16600ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=16600ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=16600ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16600ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16600ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=16600ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=16600ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=16600ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=16600ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=16600ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=16600ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16600ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16600ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16600ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16600ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16620ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16620ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16620ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16620ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16620ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16620ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16620ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16620ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16620ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=16620ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=16620ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16620ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=16620ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=16620ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=16620ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16620ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16620ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=16620ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=16620ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=16620ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16620ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=16620ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16620ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16620ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16620ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16640ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16640ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16640ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16640ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16640ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16640ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16640ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16640ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16640ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16640ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=16640ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=16640ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=16640ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=16640ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16640ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16640ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=16640ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=16640ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=16640ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=16640ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=16640ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=16640ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16640ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16640ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16640ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16640ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16660ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16660ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16660ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16660ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16660ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16660ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16660ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16660ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16660ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=16660ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=16660ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16660ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=16660ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=16660ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=16660ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16660ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16660ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=16660ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=16660ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=16660ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16660ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=16660ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16660ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16660ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16660ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16680ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16680ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16680ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16680ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16680ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16680ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16680ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16680ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16680ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16680ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=16680ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=16680ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=16680ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=16680ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16680ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16680ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=16680ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=16680ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=16680ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=16680ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=16680ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=16680ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16680ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16680ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16680ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16680ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16700ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16700ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16700ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16700ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16700ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16700ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16700ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16700ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16700ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=16700ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=16700ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16700ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=16700ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=16700ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=16700ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16700ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16700ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=16700ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=16700ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=16700ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16700ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=16700ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16700ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16700ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16700ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16720ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16720ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16720ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16720ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16720ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16720ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16720ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16720ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16720ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16720ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=16720ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=16720ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=16720ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=16720ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16720ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16720ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=16720ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=16720ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=16720ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=16720ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=16720ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=16720ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16720ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16720ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16720ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16720ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16740ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16740ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16740ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16740ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16740ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16740ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16740ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16740ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16740ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=16740ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=16740ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16740ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=16740ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=16740ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=16740ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16740ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16740ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=16740ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=16740ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=16740ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16740ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=16740ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16740ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16740ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16740ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16760ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16760ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16760ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16760ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16760ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16760ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16760ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16760ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16760ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16760ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=16760ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=16760ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=16760ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=16760ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16760ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16760ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=16760ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=16760ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=16760ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=16760ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=16760ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=16760ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16760ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16760ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16760ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16760ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16780ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16780ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16780ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16780ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16780ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16780ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16780ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16780ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16780ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=16780ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=16780ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16780ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=16780ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=16780ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=16780ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16780ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16780ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=16780ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=16780ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=16780ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16780ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=16780ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16780ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16780ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16780ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16800ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16800ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16800ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16800ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16800ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16800ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16800ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16800ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16800ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16800ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=16800ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=16800ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=16800ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=16800ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16800ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16800ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=16800ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=16800ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=16800ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=16800ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=16800ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=16800ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16800ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16800ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16800ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16800ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16820ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16820ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16820ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16820ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16820ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16820ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16820ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16820ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16820ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=16820ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=16820ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16820ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=16820ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=16820ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=16820ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16820ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16820ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=16820ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=16820ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=16820ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16820ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=16820ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16820ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16820ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16820ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16840ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16840ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16840ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16840ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16840ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16840ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16840ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16840ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16840ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16840ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=16840ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=16840ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=16840ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=16840ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16840ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16840ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=16840ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=16840ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=16840ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=16840ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=16840ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=16840ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16840ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16840ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16840ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16840ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16860ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16860ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16860ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16860ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16860ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16860ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16860ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16860ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16860ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=16860ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=16860ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16860ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=16860ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=16860ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=16860ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16860ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16860ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=16860ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=16860ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=16860ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16860ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=16860ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16860ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16860ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16860ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16880ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16880ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16880ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16880ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16880ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16880ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16880ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16880ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16880ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=16880ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16880ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=16880ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=16880ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=16880ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16880ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16880ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=16880ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=16880ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=16880ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=16880ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=16880ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=16880ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16880ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16880ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16880ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16880ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16900ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16900ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16900ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16900ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16900ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16900ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16900ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16900ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16900ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=16900ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=16900ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16900ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=16900ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=16900ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=16900ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16900ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16900ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=16900ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=16900ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=16900ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16900ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=16900ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16900ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16900ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16900ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16920ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16920ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16920ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16920ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16920ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16920ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16920ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16920ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16920ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16920ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=16920ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=16920ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=16920ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=16920ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16920ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16920ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=16920ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=16920ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=16920ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=16920ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=16920ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=16920ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16920ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16920ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16920ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16920ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=16920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16940ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16940ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16940ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16940ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16940ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16940ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16940ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16940ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16940ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16940ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=16940ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=16960ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16960ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16960ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16960ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=16960ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16960ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16960ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=16960ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16960ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16960ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16960ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16960ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=16960ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16960ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16960ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16960ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=16960ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=16960ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=16960ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=16960ms
fork_0->>philosopher_0: {:fork_denied, :fork_0}
Note over fork_0,philosopher_0: t=16960ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=16960ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=16960ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16960ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=16960ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16960ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=16960ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16960ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=16960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=16980ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=16980ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=16980ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=16980ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=16980ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16980ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=16980ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16980ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16980ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=16980ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=16980ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=16980ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=16980ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=16980ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=16980ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=16980ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=16980ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16980ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=16980ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=16980ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=16980ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=16980ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=16980ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=16980ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=16980ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=16980ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=16980ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=16980ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17000ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17000ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17000ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17000ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17000ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17000ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=17000ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17000ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17000ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=17000ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17000ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17000ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=17000ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17000ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17000ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17000ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=17000ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=17000ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=17000ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=17000ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=17000ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=17000ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17000ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17000ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17000ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17000ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17000ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17020ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17020ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17020ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17020ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17020ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17020ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17020ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=17020ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=17020ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17020ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17020ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=17020ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17020ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=17020ms
fork_0->>philosopher_4: {:fork_granted, :fork_0}
Note over fork_0,philosopher_4: t=17020ms
fork_0->>philosopher_0: {:fork_denied, :fork_0}
Note over fork_0,philosopher_0: t=17020ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17020ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=17020ms
philosopher_4->>philosopher_4: {:mumble, "I'm full!"}
Note over philosopher_4,philosopher_4: t=17020ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=17020ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17020ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=17020ms
philosopher_4->>fork_0: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=17020ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17020ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17020ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17040ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17040ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17040ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17040ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17040ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17040ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17040ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17040ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17040ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17040ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=17040ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=17040ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17040ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=17040ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=17040ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=17040ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17040ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17040ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=17040ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=17040ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=17040ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=17040ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17040ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17040ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17040ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17040ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17060ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17060ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17060ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17060ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17060ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17060ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17060ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17060ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17060ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17060ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=17060ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17060ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=17060ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=17060ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17060ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=17060ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17060ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17060ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=17060ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=17060ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=17060ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=17060ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=17060ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17060ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17060ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17060ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17060ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17060ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17080ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17080ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17080ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17080ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17080ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17080ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17080ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17080ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17080ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=17080ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17080ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=17080ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=17080ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17080ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17080ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=17080ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=17080ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17080ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=17080ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=17080ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17080ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=17080ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17080ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=17080ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17080ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17080ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17080ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17100ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17100ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17100ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17100ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17100ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17100ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17100ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17100ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17100ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=17100ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17100ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=17100ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=17100ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=17100ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17100ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17100ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17100ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=17100ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=17100ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=17100ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=17100ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17100ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=17100ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17100ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17100ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17100ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17100ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17120ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17120ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17120ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17120ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17120ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17120ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17120ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17120ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17120ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17120ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17120ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=17120ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17120ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=17120ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=17120ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=17120ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17120ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=17120ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=17120ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=17120ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=17120ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=17120ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17120ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17120ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17120ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17120ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17140ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17140ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17140ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17140ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17140ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17140ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17140ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17140ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17140ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=17140ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17140ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17140ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=17140ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17140ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17140ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=17140ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=17140ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=17140ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17140ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=17140ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=17140ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17140ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=17140ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17140ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17140ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=17140ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17140ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17140ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17160ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17160ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17160ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17160ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17160ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17160ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17160ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17160ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17160ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17160ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=17160ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17160ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=17160ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17160ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=17160ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=17160ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17160ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=17160ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17160ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=17160ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=17160ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17160ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17160ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17160ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=17160ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=17160ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17160ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17160ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17180ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17180ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17180ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17180ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=17180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17180ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17180ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17180ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17180ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17180ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17180ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17180ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=17180ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17180ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=17180ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=17180ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17180ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17180ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=17180ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=17180ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=17180ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17180ms
fork_0->>philosopher_4: {:fork_granted, :fork_0}
Note over fork_0,philosopher_4: t=17180ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=17180ms
philosopher_4->>philosopher_4: {:mumble, "I'm full!"}
Note over philosopher_4,philosopher_4: t=17180ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=17180ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17180ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17180ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17180ms
philosopher_4->>fork_0: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=17180ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17200ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17200ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17200ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17200ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17200ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17200ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17200ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17200ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17200ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17200ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17200ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17200ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=17200ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=17200ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17200ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17200ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=17200ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=17200ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17200ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=17200ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=17200ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=17200ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17200ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=17200ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17200ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17200ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=17200ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=17200ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17200ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17200ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17220ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17220ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17220ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17220ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17220ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=17220ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=17220ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17220ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17220ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17220ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17220ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=17220ms
fork_0->>philosopher_4: {:fork_granted, :fork_0}
Note over fork_0,philosopher_4: t=17220ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=17220ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=17220ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17220ms
philosopher_4->>philosopher_4: {:mumble, "I'm full!"}
Note over philosopher_4,philosopher_4: t=17220ms
fork_0->>philosopher_0: {:fork_denied, :fork_0}
Note over fork_0,philosopher_0: t=17220ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17220ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=17220ms
philosopher_4->>fork_0: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=17220ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=17220ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17220ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17220ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17240ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17240ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17240ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17240ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17240ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17240ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=17240ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=17240ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17240ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17240ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=17240ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17240ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17240ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=17240ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17240ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=17240ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17240ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17240ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=17240ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=17240ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17240ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17240ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17240ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=17240ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=17240ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17240ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17260ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17260ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17260ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17260ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17260ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17260ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17260ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17260ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17260ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17260ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17260ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17260ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=17260ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=17260ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=17260ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=17260ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17260ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=17260ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=17260ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=17260ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=17260ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17260ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17260ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17260ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=17260ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17260ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17280ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17280ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17280ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17280ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17280ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17280ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17280ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17280ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17280ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17280ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=17280ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=17280ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17280ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=17280ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17280ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=17280ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17280ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=17280ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=17280ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=17280ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=17280ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=17280ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17280ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17280ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17280ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17280ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17300ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17300ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17300ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17300ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17300ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17300ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17300ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17300ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17300ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=17300ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=17300ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=17300ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17300ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17300ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=17300ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17300ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=17300ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=17300ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=17300ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=17300ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=17300ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17300ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=17300ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17300ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17300ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17300ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17300ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17320ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17320ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17320ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17320ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17320ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17320ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17320ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17320ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17320ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=17320ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17320ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=17320ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=17320ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17320ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17320ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=17320ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=17320ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17320ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=17320ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=17320ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=17320ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=17320ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17320ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17320ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17320ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17320ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17340ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17340ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17340ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17340ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17340ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17340ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17340ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17340ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17340ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=17340ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17340ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=17340ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=17340ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17340ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=17340ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=17340ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17340ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=17340ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17340ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17340ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=17340ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17340ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17340ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=17340ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=17340ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=17340ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17340ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17340ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17360ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17360ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17360ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17360ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17360ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17360ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17360ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17360ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17360ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=17360ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17360ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=17360ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=17360ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=17360ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17360ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17360ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17360ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=17360ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=17360ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=17360ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=17360ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=17360ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17360ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17360ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17360ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17360ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17380ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17380ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17380ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17380ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17380ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17380ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17380ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17380ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17380ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17380ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=17380ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=17380ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17380ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=17380ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=17380ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=17380ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17380ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17380ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=17380ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=17380ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=17380ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17380ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=17380ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=17380ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17380ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17380ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17380ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17380ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17400ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17400ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17400ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17400ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17400ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17400ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17400ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17400ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17400ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=17400ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17400ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=17400ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=17400ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=17400ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17400ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17400ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17400ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=17400ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=17400ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=17400ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=17400ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=17400ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17400ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17400ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17400ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17400ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17420ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17420ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17420ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17420ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17420ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17420ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17420ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17420ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17420ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=17420ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=17420ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17420ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=17420ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=17420ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=17420ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17420ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17420ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=17420ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=17420ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=17420ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17420ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=17420ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=17420ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17420ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17420ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17420ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17420ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17440ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17440ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17440ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17440ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17440ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17440ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17440ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17440ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17440ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=17440ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17440ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=17440ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=17440ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=17440ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17440ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17440ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17440ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=17440ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=17440ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=17440ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=17440ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=17440ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17440ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17440ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17440ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17440ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17460ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17460ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17460ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17460ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17460ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17460ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17460ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17460ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17460ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=17460ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=17460ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17460ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=17460ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=17460ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=17460ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17460ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17460ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=17460ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=17460ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=17460ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17460ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=17460ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=17460ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17460ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17460ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17460ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17460ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17480ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17480ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17480ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17480ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17480ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17480ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17480ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17480ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17480ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=17480ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17480ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=17480ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=17480ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=17480ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17480ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17480ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17480ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=17480ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=17480ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=17480ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=17480ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=17480ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17480ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17480ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17480ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17480ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17500ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17500ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17500ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17500ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17500ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17500ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17500ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17500ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17500ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17500ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=17500ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=17500ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17500ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=17500ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=17500ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=17500ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17500ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17500ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=17500ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=17500ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=17500ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17500ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=17500ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=17500ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17500ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17500ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17500ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17500ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17520ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17520ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17520ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17520ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17520ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17520ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17520ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17520ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17520ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=17520ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17520ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=17520ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=17520ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=17520ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17520ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17520ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17520ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=17520ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=17520ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=17520ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=17520ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=17520ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17520ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17520ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17520ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17520ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17540ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17540ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17540ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17540ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17540ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17540ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17540ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17540ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17540ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=17540ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=17540ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17540ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=17540ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=17540ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=17540ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17540ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17540ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=17540ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=17540ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=17540ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17540ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=17540ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=17540ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17540ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17540ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17540ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17540ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17560ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17560ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17560ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17560ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17560ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17560ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17560ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17560ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17560ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=17560ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17560ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=17560ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=17560ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=17560ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17560ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17560ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17560ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=17560ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=17560ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=17560ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=17560ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=17560ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17560ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17560ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17560ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17560ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17580ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17580ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17580ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17580ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17580ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17580ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17580ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17580ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17580ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=17580ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=17580ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17580ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=17580ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=17580ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=17580ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17580ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17580ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=17580ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=17580ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=17580ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17580ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=17580ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=17580ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17580ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17580ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17580ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17580ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17600ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17600ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17600ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17600ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17600ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17600ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17600ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17600ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17600ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=17600ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=17600ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17600ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=17600ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=17600ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17600ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17600ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17600ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=17600ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=17600ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=17600ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=17600ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=17600ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17600ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17600ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17600ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17600ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17620ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17620ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17620ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17620ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17620ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17620ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17620ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17620ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17620ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=17620ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=17620ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17620ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=17620ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=17620ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17620ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=17620ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17620ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=17620ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=17620ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=17620ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=17620ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17620ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=17620ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17620ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17620ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17620ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17620ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17640ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17640ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17640ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17640ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17640ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17640ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17640ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17640ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17640ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=17640ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17640ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=17640ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=17640ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17640ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17640ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=17640ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17640ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=17640ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=17640ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=17640ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=17640ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=17640ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17640ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17640ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17640ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17640ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17660ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17660ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17660ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17660ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17660ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17660ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17660ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17660ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17660ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=17660ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=17660ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17660ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=17660ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=17660ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=17660ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17660ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17660ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=17660ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=17660ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=17660ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17660ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=17660ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=17660ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17660ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17660ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17660ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17660ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17680ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17680ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17680ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17680ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17680ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17680ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17680ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17680ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17680ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=17680ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17680ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=17680ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=17680ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=17680ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17680ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17680ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17680ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=17680ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=17680ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=17680ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=17680ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=17680ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17680ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17680ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17680ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17680ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17700ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17700ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17700ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17700ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17700ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17700ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17700ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17700ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17700ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=17700ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=17700ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17700ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=17700ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=17700ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=17700ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17700ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17700ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=17700ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=17700ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=17700ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17700ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=17700ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=17700ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17700ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17700ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17700ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17700ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17720ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17720ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17720ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17720ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17720ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17720ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17720ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17720ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17720ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=17720ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17720ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=17720ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=17720ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=17720ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17720ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17720ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17720ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=17720ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=17720ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=17720ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=17720ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=17720ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17720ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17720ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17720ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17720ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17740ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17740ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17740ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17740ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17740ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17740ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17740ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17740ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17740ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=17740ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=17740ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17740ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=17740ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=17740ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=17740ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17740ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17740ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=17740ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=17740ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=17740ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17740ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=17740ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=17740ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17740ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17740ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17740ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17740ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17760ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17760ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17760ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17760ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17760ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17760ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17760ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17760ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17760ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=17760ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17760ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=17760ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=17760ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=17760ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17760ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17760ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17760ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=17760ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=17760ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=17760ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=17760ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=17760ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17760ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17760ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17760ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17760ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17780ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17780ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17780ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17780ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17780ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17780ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17780ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17780ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17780ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=17780ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=17780ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17780ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=17780ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=17780ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=17780ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17780ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17780ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=17780ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=17780ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=17780ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17780ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=17780ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=17780ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17780ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17780ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17780ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17780ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17800ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17800ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17800ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17800ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17800ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17800ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17800ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17800ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17800ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=17800ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17800ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=17800ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=17800ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=17800ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17800ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17800ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17800ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=17800ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=17800ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=17800ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=17800ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=17800ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17800ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17800ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17800ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17800ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17820ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17820ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17820ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17820ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17820ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17820ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17820ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17820ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17820ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=17820ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=17820ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17820ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=17820ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=17820ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=17820ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17820ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17820ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=17820ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=17820ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=17820ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17820ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=17820ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=17820ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17820ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17820ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17820ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17820ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17840ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17840ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17840ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17840ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17840ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17840ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17840ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17840ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17840ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=17840ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17840ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=17840ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=17840ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=17840ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17840ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17840ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17840ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=17840ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=17840ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=17840ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=17840ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=17840ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17840ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17840ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17840ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17840ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17860ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17860ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17860ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17860ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17860ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17860ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17860ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17860ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17860ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=17860ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=17860ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17860ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=17860ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=17860ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=17860ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17860ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17860ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=17860ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=17860ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=17860ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17860ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=17860ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=17860ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17860ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17860ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17860ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17860ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17880ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17880ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17880ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17880ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17880ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17880ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17880ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17880ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17880ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=17880ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17880ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=17880ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=17880ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=17880ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17880ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17880ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17880ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=17880ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=17880ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=17880ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=17880ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=17880ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17880ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17880ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17880ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17880ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17900ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17900ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17900ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17900ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17900ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17900ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17900ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17900ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17900ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=17900ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=17900ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17900ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=17900ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=17900ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=17900ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17900ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17900ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=17900ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=17900ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=17900ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17900ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=17900ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=17900ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17900ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17900ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17900ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17900ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17920ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17920ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17920ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17920ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17920ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17920ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17920ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17920ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17920ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=17920ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17920ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=17920ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=17920ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=17920ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17920ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17920ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17920ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=17920ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=17920ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=17920ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=17920ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=17920ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17920ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17920ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17920ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17920ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17940ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17940ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17940ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17940ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17940ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17940ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17940ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17940ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17940ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17940ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=17940ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=17940ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17940ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=17940ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=17940ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=17940ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17940ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17940ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=17940ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=17940ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=17940ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17940ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=17940ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=17940ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17940ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17940ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17940ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17940ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17960ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17960ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17960ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17960ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17960ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17960ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17960ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17960ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17960ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=17960ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17960ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=17960ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=17960ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=17960ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17960ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17960ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17960ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=17960ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=17960ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=17960ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=17960ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=17960ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17960ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17960ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17960ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=17960ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=17960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=17980ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=17980ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=17980ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=17980ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=17980ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17980ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=17980ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17980ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17980ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=17980ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=17980ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=17980ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=17980ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=17980ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=17980ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=17980ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17980ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17980ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=17980ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=17980ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=17980ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=17980ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=17980ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=17980ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=17980ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=17980ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=17980ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=17980ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18000ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18000ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18000ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18000ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18000ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18000ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18000ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18000ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18000ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=18000ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18000ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=18000ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=18000ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=18000ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18000ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18000ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18000ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=18000ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=18000ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=18000ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=18000ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=18000ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18000ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18000ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18000ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18000ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18020ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18020ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18020ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18020ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18020ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18020ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18020ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18020ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18020ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18020ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=18020ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=18020ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18020ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=18020ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=18020ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=18020ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18020ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18020ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=18020ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=18020ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=18020ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18020ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=18020ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=18020ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18020ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18020ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18020ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18020ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18040ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18040ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18040ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18040ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18040ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18040ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18040ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18040ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18040ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=18040ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18040ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=18040ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=18040ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=18040ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18040ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18040ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18040ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=18040ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=18040ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=18040ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=18040ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=18040ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18040ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18040ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18040ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18040ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18060ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18060ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18060ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18060ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18060ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18060ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18060ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18060ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18060ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18060ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=18060ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=18060ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18060ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=18060ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=18060ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=18060ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18060ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18060ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=18060ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=18060ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=18060ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18060ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=18060ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=18060ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18060ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18060ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18060ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18060ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18080ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18080ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18080ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18080ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18080ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18080ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18080ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18080ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18080ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=18080ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18080ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=18080ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=18080ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=18080ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18080ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18080ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18080ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=18080ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=18080ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=18080ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=18080ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=18080ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18080ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18080ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18080ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18080ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18100ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18100ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18100ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18100ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18100ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18100ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18100ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18100ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18100ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=18100ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=18100ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18100ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=18100ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=18100ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=18100ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18100ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18100ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=18100ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=18100ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=18100ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18120ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=18120ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=18120ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18120ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18120ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18120ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18120ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18120ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18120ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18120ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18120ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18120ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18120ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18120ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=18120ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=18120ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=18120ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18120ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18120ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18120ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18120ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=18120ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18120ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=18120ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=18120ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18120ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=18120ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=18120ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=18120ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18120ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18120ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18120ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18120ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18120ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18140ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18140ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18140ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18140ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18140ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18140ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18140ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18140ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18140ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18140ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18140ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=18140ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=18140ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=18140ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=18140ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18140ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18140ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=18140ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=18140ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=18140ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=18140ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=18140ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=18140ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18140ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18140ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18140ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18140ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18140ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18160ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18160ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18160ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18160ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18160ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18160ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18160ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18160ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18160ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18160ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=18160ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=18160ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18160ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=18160ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=18160ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18160ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18160ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18160ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=18160ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=18160ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=18160ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=18160ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=18160ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18160ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18160ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18160ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18160ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18160ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18180ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18180ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18180ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18180ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18180ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18180ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18180ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18180ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18180ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=18180ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18180ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=18180ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=18180ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=18180ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18180ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18180ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=18180ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=18180ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=18180ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=18180ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=18180ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=18180ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18180ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18180ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18180ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18180ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18180ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18200ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18200ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18200ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18200ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18200ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18200ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18200ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18200ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18200ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18200ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=18200ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=18200ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18200ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=18200ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=18200ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18200ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18200ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18200ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=18200ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=18200ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=18200ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=18200ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=18200ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18200ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18200ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18200ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18200ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18200ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18220ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18220ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18220ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18220ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18220ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18220ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18220ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18220ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18220ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18220ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=18220ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=18220ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=18220ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=18220ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18220ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18220ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=18220ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=18220ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=18220ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=18220ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=18220ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=18220ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18220ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18220ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18220ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18220ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18220ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18240ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18240ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18240ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18240ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18240ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18240ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18240ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18240ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18240ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=18240ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=18240ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18240ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=18240ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=18240ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18240ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18240ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18240ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=18240ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=18240ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=18240ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=18240ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=18240ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18240ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18240ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18240ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18240ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18240ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18260ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18260ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18260ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18260ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18260ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18260ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18260ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18260ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18260ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18260ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18260ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=18260ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=18260ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=18260ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=18260ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18260ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18260ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=18260ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=18260ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=18260ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=18260ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=18260ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=18260ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18260ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18260ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18260ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18260ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18260ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18280ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18280ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18280ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18280ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18280ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18280ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18280ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18280ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18280ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=18280ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=18280ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18280ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=18280ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=18280ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18280ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18280ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18280ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=18280ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=18280ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=18280ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=18280ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=18280ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18280ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18280ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18280ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18280ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18280ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18300ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18300ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18300ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18300ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18300ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18300ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18300ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18300ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18300ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18300ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=18300ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=18300ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=18300ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=18300ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18300ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18300ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=18300ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=18300ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=18300ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=18300ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=18300ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=18300ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18300ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18300ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18300ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18300ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18300ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18320ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18320ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18320ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18320ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18320ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18320ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18320ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18320ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18320ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=18320ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=18320ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18320ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=18320ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=18320ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18320ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18320ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18320ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=18320ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=18320ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=18320ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=18320ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=18320ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18320ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18320ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18320ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18320ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18320ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18340ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18340ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18340ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18340ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18340ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18340ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18340ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18340ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18340ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18340ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18340ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=18340ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=18340ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=18340ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=18340ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18340ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18340ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=18340ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=18340ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=18340ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=18340ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=18340ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=18340ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18340ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18340ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18340ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18340ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18340ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18360ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18360ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18360ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18360ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18360ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18360ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18360ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18360ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18360ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=18360ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=18360ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18360ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=18360ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=18360ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18360ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18360ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18360ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=18360ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=18360ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=18360ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=18360ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=18360ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18360ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18360ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18360ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18360ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18360ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18380ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18380ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18380ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18380ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18380ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18380ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18380ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18380ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18380ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18380ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18380ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=18380ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=18380ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=18380ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=18380ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18380ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18380ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=18380ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=18380ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=18380ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=18380ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=18380ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=18380ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18380ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18380ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18380ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18380ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18380ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18400ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18400ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18400ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18400ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18400ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18400ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18400ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18400ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18400ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=18400ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=18400ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18400ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=18400ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=18400ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18400ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18400ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18400ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=18400ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=18400ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=18400ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=18420ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=18420ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18420ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18420ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18420ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18420ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18420ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18420ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18420ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18420ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18420ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18420ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18420ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18420ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=18420ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=18420ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18420ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18420ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18420ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=18420ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18420ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=18420ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=18420ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=18420ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18420ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=18420ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18420ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18420ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=18420ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=18420ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18420ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18420ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=18420ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18420ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18440ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18440ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=18440ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=18440ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18440ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18440ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18440ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18440ms
fork_0->>philosopher_4: {:fork_granted, :fork_0}
Note over fork_0,philosopher_4: t=18440ms
philosopher_4->>philosopher_4: {:mumble, "I'm full!"}
Note over philosopher_4,philosopher_4: t=18440ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18440ms
philosopher_4->>fork_0: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=18440ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18440ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18440ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18440ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18440ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=18440ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18440ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18440ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18440ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=18440ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=18440ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=18440ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18440ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=18440ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18440ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18440ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=18440ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=18460ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18460ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18460ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18460ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18460ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18460ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=18460ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18460ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=18460ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18460ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=18460ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18460ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=18460ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=18460ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18460ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18460ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=18460ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18460ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18460ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=18460ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18460ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18460ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18460ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=18460ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18460ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=18460ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18460ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18460ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=18460ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=18460ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18460ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18480ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18480ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18480ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18480ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=18480ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18480ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=18480ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18480ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=18480ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=18480ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18480ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=18480ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18480ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18480ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18480ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18480ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18480ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18480ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=18480ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=18480ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18480ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18480ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=18480ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=18500ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18500ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18500ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18500ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18500ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18500ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=18500ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18500ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18500ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18500ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18500ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=18500ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18500ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18500ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=18500ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18500ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=18500ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18500ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=18500ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=18500ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=18500ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18500ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18500ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=18500ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=18500ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18500ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=18500ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18500ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18500ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18500ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18500ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18500ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=18500ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18520ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18520ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=18520ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18520ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=18520ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=18520ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18520ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18520ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18520ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18520ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18520ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18520ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18520ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18520ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18520ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=18520ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=18520ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18520ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=18520ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=18520ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=18520ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18520ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18520ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18520ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=18520ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=18520ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=18540ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18540ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18540ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18540ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18540ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18540ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18540ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18540ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18540ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=18540ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=18540ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18540ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18540ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=18540ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18540ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=18540ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18540ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18540ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=18540ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18540ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18540ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=18540ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18540ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=18540ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18540ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=18540ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18540ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=18540ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18540ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18540ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=18540ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18540ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18560ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18560ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18560ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18560ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18560ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18560ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18560ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18560ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18560ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=18560ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18560ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=18560ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=18560ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18560ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18560ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=18560ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=18560ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=18560ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18560ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18560ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18560ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=18560ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=18560ms
fork_0->>philosopher_4: {:fork_granted, :fork_0}
Note over fork_0,philosopher_4: t=18560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18580ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18580ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18580ms
philosopher_4->>philosopher_4: {:mumble, "I'm full!"}
Note over philosopher_4,philosopher_4: t=18580ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18580ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18580ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18580ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18580ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=18580ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18580ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18580ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=18580ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=18580ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18580ms
fork_0->>philosopher_0: {:fork_denied, :fork_0}
Note over fork_0,philosopher_0: t=18580ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18580ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=18580ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=18580ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18580ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18580ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=18580ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=18580ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18580ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18580ms
philosopher_4->>fork_0: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=18580ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18580ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=18580ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=18580ms
fork_0->>philosopher_4: {:fork_granted, :fork_0}
Note over fork_0,philosopher_4: t=18580ms
philosopher_4->>philosopher_4: {:mumble, "I'm full!"}
Note over philosopher_4,philosopher_4: t=18580ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18580ms
philosopher_4->>fork_0: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=18580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18600ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18600ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18600ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18600ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18600ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18600ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18600ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18600ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18600ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=18600ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=18600ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18600ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=18600ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=18600ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18600ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18600ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18600ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=18600ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=18600ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=18600ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=18600ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18600ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18600ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=18600ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18620ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18620ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18620ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18600ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18620ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18620ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18620ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18620ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=18620ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18620ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=18620ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18620ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18620ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=18620ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18620ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=18620ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=18620ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18620ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=18620ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=18620ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18620ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=18620ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18620ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18620ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18620ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=18620ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=18620ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18620ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18620ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18640ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18640ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18640ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18640ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18640ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18640ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18640ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18640ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18640ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=18640ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18640ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=18640ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=18640ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=18640ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18640ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=18640ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18640ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=18640ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=18640ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=18640ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18640ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18640ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18640ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=18640ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=18640ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18640ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18640ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18660ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18660ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18660ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18660ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18660ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18660ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18660ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18660ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18660ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=18660ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=18660ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18660ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18660ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=18660ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18660ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=18660ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=18660ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=18660ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=18660ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18660ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18660ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18660ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18660ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=18660ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=18660ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18660ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18660ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18680ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18680ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18680ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18680ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18680ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18680ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18680ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18680ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18680ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18680ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18680ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=18680ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=18680ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=18680ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18680ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=18680ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=18680ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=18680ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=18680ms
fork_0->>philosopher_4: {:fork_granted, :fork_0}
Note over fork_0,philosopher_4: t=18680ms
philosopher_4->>philosopher_4: {:mumble, "I'm full!"}
Note over philosopher_4,philosopher_4: t=18680ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18680ms
philosopher_4->>fork_0: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=18680ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18680ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=18680ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18680ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18680ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18700ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18700ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18700ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18700ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18700ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18700ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18700ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18700ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=18700ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=18700ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18700ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=18700ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=18700ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18700ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18700ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18700ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=18700ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18700ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18700ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=18700ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=18700ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18700ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18700ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18700ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=18700ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=18700ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18700ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18700ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18720ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18720ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18720ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18720ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18720ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18720ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=18720ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18720ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18720ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18720ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18720ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=18720ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18720ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=18720ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18720ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=18720ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=18720ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=18720ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=18720ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18720ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18720ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=18720ms
fork_0->>philosopher_4: {:fork_granted, :fork_0}
Note over fork_0,philosopher_4: t=18720ms
philosopher_4->>philosopher_4: {:mumble, "I'm full!"}
Note over philosopher_4,philosopher_4: t=18720ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18720ms
philosopher_4->>fork_0: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=18720ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=18720ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18720ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18720ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18740ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18740ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18740ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18740ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18740ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18740ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18740ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18740ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18740ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=18740ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18740ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=18740ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=18740ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18740ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18740ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18740ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=18740ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=18740ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=18740ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=18740ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=18740ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18740ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18740ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=18740ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18740ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18740ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18740ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18760ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18760ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18760ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18760ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18760ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18760ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18760ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18760ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=18760ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18760ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=18760ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18760ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=18760ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18760ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=18760ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=18760ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18760ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18760ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=18760ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18760ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18760ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=18760ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=18760ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=18760ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18760ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18760ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18760ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18780ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18780ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18780ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18780ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18780ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18780ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18780ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18780ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18780ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=18780ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=18780ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18780ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18780ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18780ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=18780ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=18780ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18780ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=18780ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18780ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=18780ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=18780ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18780ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=18780ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=18780ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18780ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18780ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18780ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18800ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18800ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18800ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18800ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18800ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18800ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18800ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18800ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18800ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18800ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=18800ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=18800ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18800ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18800ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=18800ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=18800ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=18800ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=18800ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18800ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18800ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18800ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18800ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=18800ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=18800ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18800ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=18800ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=18800ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18800ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18800ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18820ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18820ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18820ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18820ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18820ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=18820ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18820ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18820ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=18820ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=18820ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18820ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=18820ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18820ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18820ms
fork_0->>philosopher_4: {:fork_granted, :fork_0}
Note over fork_0,philosopher_4: t=18820ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=18820ms
fork_0->>philosopher_0: {:fork_denied, :fork_0}
Note over fork_0,philosopher_0: t=18820ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=18820ms
philosopher_4->>philosopher_4: {:mumble, "I'm full!"}
Note over philosopher_4,philosopher_4: t=18820ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=18820ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18820ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18820ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18820ms
philosopher_4->>fork_0: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=18820ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18840ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18840ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18840ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18840ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18840ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18840ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=18840ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18840ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18840ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18840ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=18840ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=18840ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18840ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=18840ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18840ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18840ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=18840ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18840ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=18840ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18840ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18840ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=18840ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18840ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=18840ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=18840ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18860ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18860ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18860ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18860ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18860ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18860ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18860ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=18860ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18860ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18860ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18860ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18860ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=18860ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18860ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=18860ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18860ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18860ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=18860ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=18860ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18860ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18860ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=18860ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=18860ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=18860ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18860ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18860ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18880ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18880ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18880ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18880ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18880ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18880ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18880ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18880ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=18880ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=18880ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18880ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18880ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=18880ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18880ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=18880ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18880ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18880ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18880ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=18880ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=18880ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=18880ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18880ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18880ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18880ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=18880ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=18880ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18880ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18880ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18900ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18900ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18900ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18900ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18900ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18900ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=18900ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18900ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18900ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18900ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18900ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18900ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=18900ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=18900ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=18900ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=18900ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=18900ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18900ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=18900ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18900ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=18900ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=18900ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=18900ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18900ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18900ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18900ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18900ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18920ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18920ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18920ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18920ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18920ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18920ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18920ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18920ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=18920ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18920ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18920ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=18920ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=18920ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=18920ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=18920ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18920ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=18920ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18920ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18920ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=18920ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=18920ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18920ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=18920ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18920ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18940ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18940ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18940ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18940ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18940ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18940ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18940ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18940ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18940ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18940ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18940ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18940ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=18940ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=18940ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=18940ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=18940ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=18940ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=18940ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18940ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18940ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18940ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18940ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=18940ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=18940ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=18940ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18940ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18940ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18940ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18960ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18960ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18960ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18960ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18960ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=18960ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18960ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18960ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18960ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18960ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18960ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=18960ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=18960ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=18960ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18960ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=18960ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=18960ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18960ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=18960ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=18960ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=18960ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18960ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=18960ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18960ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18960ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=18960ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=18960ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18960ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=18980ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=18980ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=18980ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=18980ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18980ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18980ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=18980ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=18980ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=18980ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=18980ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=18980ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=18980ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=18980ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18980ms
fork_0->>philosopher_4: {:fork_granted, :fork_0}
Note over fork_0,philosopher_4: t=18980ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=18980ms
philosopher_4->>philosopher_4: {:mumble, "I'm full!"}
Note over philosopher_4,philosopher_4: t=18980ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=18980ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=18980ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=18980ms
philosopher_4->>fork_0: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=18980ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=18980ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=18980ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18980ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=18980ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18980ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=18980ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=18980ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=18980ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=18980ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19000ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19000ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19000ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19000ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19000ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19000ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19000ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19000ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19000ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=19000ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=19000ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=19000ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=19000ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=19000ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19000ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=19000ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=19000ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=19000ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=19000ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=19000ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=19000ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=19000ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19000ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19000ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19000ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19000ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=19000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19020ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19020ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19020ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19020ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19020ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19020ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19020ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19020ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19020ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19020ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=19020ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=19020ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=19020ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=19020ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=19020ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=19020ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=19020ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19020ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=19020ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=19020ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=19020ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19020ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=19020ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=19020ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19020ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19020ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=19020ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19020ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19040ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19040ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19040ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19040ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19040ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19040ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19040ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19040ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19040ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=19040ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=19040ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=19040ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=19040ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=19040ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19040ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=19040ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=19040ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=19040ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=19040ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=19040ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=19040ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=19040ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19040ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19040ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19040ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19040ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=19040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19060ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19060ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19060ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19060ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19060ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19060ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19060ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19060ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19060ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19060ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=19060ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=19080ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19080ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=19080ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=19080ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19080ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19080ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19080ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=19080ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19080ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=19080ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19080ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19080ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=19080ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19080ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19080ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19080ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=19080ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=19080ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=19080ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=19080ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=19080ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=19080ms
fork_0->>philosopher_0: {:fork_denied, :fork_0}
Note over fork_0,philosopher_0: t=19080ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=19080ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=19080ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=19080ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19080ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19080ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19080ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=19080ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19100ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19100ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19100ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19100ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19100ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19100ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19100ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19100ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19100ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=19100ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=19100ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=19100ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=19100ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=19100ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=19100ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=19100ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19100ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=19100ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=19100ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=19100ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19100ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=19100ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19100ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19100ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=19100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19120ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19120ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19120ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19120ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19120ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19120ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19120ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19120ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19120ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=19120ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=19140ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=19140ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=19140ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19140ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19140ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19140ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19140ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19140ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=19140ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19140ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19140ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=19140ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19140ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=19140ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=19140ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19140ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19140ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19140ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=19140ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=19140ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=19140ms
fork_0->>philosopher_0: {:fork_denied, :fork_0}
Note over fork_0,philosopher_0: t=19140ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=19140ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=19140ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=19140ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=19140ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19140ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=19140ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19140ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19140ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=19140ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19140ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19160ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19160ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19160ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19160ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19160ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19160ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19160ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19160ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19160ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19160ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=19160ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=19160ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=19160ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19160ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=19160ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=19160ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=19160ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=19160ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=19160ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=19160ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=19160ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=19160ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19160ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19160ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19160ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=19160ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19160ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=19160ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19180ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19180ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19180ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19180ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19180ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19180ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19180ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19180ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=19180ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=19180ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19180ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=19180ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=19180ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=19180ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=19180ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19180ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=19180ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=19180ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=19180ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=19180ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=19180ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19180ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19180ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=19180ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=19180ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19180ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=19180ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19200ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19200ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19200ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19200ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19200ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19200ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19200ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19200ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19200ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19200ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=19200ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=19200ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=19200ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=19200ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=19200ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=19200ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=19200ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19200ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=19200ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=19200ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19200ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=19200ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=19200ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19200ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19200ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=19200ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19220ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19220ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=19220ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=19220ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=19220ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=19220ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19220ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=19220ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19220ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19220ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19220ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=19220ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=19220ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=19220ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=19220ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19220ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=19220ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19220ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=19220ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19220ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=19220ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19220ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19220ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19220ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=19220ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=19220ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19220ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19220ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=19220ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19220ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=19240ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19240ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19240ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=19240ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19240ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19240ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19240ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19240ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19240ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19240ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=19240ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=19240ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=19240ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=19240ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=19240ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=19240ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=19260ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19260ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=19260ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19240ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19260ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19260ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19260ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19260ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=19260ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19260ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=19260ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=19260ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=19260ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19260ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=19260ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19260ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19260ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19260ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19260ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19260ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19260ms
fork_0->>philosopher_0: {:fork_denied, :fork_0}
Note over fork_0,philosopher_0: t=19260ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19260ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=19260ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=19260ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=19260ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=19260ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=19260ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=19260ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19260ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=19260ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19280ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19280ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19280ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19280ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=19280ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=19280ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19280ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19280ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19280ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=19280ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19280ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19300ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19280ms
fork_0->>philosopher_4: {:fork_granted, :fork_0}
Note over fork_0,philosopher_4: t=19300ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=19300ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19300ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19300ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=19300ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19300ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19300ms
fork_0->>philosopher_0: {:fork_denied, :fork_0}
Note over fork_0,philosopher_0: t=19300ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=19300ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19300ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19300ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19300ms
philosopher_4->>philosopher_4: {:mumble, "I'm full!"}
Note over philosopher_4,philosopher_4: t=19300ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=19300ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19300ms
fork_0->>philosopher_0: {:fork_denied, :fork_0}
Note over fork_0,philosopher_0: t=19300ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=19300ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=19300ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19300ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=19300ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=19320ms
philosopher_4->>fork_0: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=19400ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19400ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=19400ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19400ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=19400ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=19400ms
fork_0->>philosopher_4: {:fork_granted, :fork_0}
Note over fork_0,philosopher_4: t=19400ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19400ms
philosopher_4->>philosopher_4: {:mumble, "I'm full!"}
Note over philosopher_4,philosopher_4: t=19400ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19400ms
philosopher_4->>fork_0: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=19400ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19320ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19320ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=19400ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19400ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19400ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19320ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19320ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=19400ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19400ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19420ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19420ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19420ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19420ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19420ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19420ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=19420ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=19420ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=19420ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19420ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=19420ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19420ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19420ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19420ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19420ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=19440ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=19440ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=19440ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19440ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19440ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19440ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19440ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=19440ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=19440ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=19440ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19440ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=19440ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=19440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19440ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=19440ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19440ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19440ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19440ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=19440ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=19440ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19440ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19440ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=19440ms
fork_0->>philosopher_0: {:fork_denied, :fork_0}
Note over fork_0,philosopher_0: t=19440ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19440ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19440ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19440ms
fork_0->>philosopher_0: {:fork_denied, :fork_0}
Note over fork_0,philosopher_0: t=19440ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=19440ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=19440ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=19440ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=19440ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=19440ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=19440ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=19440ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19440ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=19440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19460ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19460ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19460ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19460ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19460ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19460ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19460ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19460ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=19460ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=19460ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=19460ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=19460ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=19460ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19460ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=19460ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=19460ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=19460ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=19460ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19460ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=19460ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19460ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19460ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19460ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19460ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=19460ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=19460ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=19460ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=19460ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19460ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=19460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19480ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19480ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19480ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19480ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19520ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19520ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19520ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19520ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19520ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19520ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19520ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19520ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19520ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=19520ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=19520ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=19520ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=19520ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=19520ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19520ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19520ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19520ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19520ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19520ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=19520ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=19520ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19520ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=19520ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=19520ms
fork_0->>philosopher_0: {:fork_denied, :fork_0}
Note over fork_0,philosopher_0: t=19520ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=19520ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=19520ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=19520ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=19520ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19520ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19520ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=19520ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19520ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=19520ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=19520ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19520ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19520ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=19520ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19540ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19520ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19540ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19540ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19540ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19540ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19540ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=19540ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19540ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19540ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19540ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19540ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=19540ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=19540ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=19540ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=19540ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19540ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=19540ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=19540ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=19540ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=19540ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=19540ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19540ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=19540ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=19540ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19540ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=19540ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19540ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19540ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19560ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19560ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19560ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19560ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19560ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19560ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19560ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=19560ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=19560ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=19560ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=19560ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=19560ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19560ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=19560ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=19560ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=19560ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19560ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19560ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19560ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19560ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=19560ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=19560ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=19560ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19560ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=19560ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=19560ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19560ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19580ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19580ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19580ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19580ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19580ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19580ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19580ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19580ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19580ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=19580ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=19580ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=19580ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=19580ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=19580ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19580ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=19580ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=19580ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=19580ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=19580ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=19580ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19580ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=19580ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19580ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19580ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=19580ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19600ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19600ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19600ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19600ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19600ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19600ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19600ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19600ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19600ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=19600ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=19600ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=19600ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=19600ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19600ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=19600ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=19600ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19600ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19600ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=19600ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=19600ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=19600ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19600ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=19600ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=19600ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=19600ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=19600ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=19600ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19600ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=19600ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19620ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19620ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19620ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19620ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19620ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19620ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19620ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=19620ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=19620ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19620ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19620ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=19620ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=19620ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=19620ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=19620ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=19620ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19620ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19620ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=19620ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19620ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19620ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=19620ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=19620ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=19620ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=19620ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19620ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=19620ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19640ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19640ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19640ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19640ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19640ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19640ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19640ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19640ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19640ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=19640ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=19640ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=19640ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=19640ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19640ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=19640ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=19640ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=19640ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19640ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=19640ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19640ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=19640ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=19640ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=19640ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=19640ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=19640ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19640ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=19640ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19660ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19660ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19660ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19660ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19660ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19660ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19660ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19660ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19660ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=19660ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=19660ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=19660ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=19660ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=19660ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19660ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=19660ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=19660ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=19660ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=19660ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=19660ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=19660ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=19660ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19660ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19660ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19660ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=19660ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19660ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19680ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19680ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19680ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19680ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19680ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19680ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19680ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19680ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19680ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=19680ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=19680ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=19680ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=19680ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=19680ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=19680ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=19680ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=19680ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=19680ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19680ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19680ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=19680ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=19680ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=19680ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19680ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19700ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19700ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19700ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19700ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19700ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19700ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19700ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19700ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=19700ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19700ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=19700ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=19700ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=19700ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=19700ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=19700ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19700ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=19700ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=19700ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=19700ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19700ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=19700ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=19700ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=19700ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19700ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=19700ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19700ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19700ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19720ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19720ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19720ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19720ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19720ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19720ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=19720ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=19720ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=19720ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=19720ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19720ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19720ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19720ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=19720ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=19720ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=19720ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=19720ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19720ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19720ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=19720ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=19720ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=19720ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=19720ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=19720ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=19720ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=19720ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=19720ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19720ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19720ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19720ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19720ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=19720ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19740ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19740ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19740ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19740ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19740ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19740ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19740ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19740ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19740ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=19740ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=19740ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=19740ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=19740ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=19740ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=19740ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=19740ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=19740ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19740ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=19740ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=19740ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=19740ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19740ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19740ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=19740ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=19740ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19740ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=19740ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19760ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19760ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19760ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19760ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19760ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19760ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19760ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19760ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=19760ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=19760ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19760ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=19760ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=19760ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=19760ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=19760ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=19760ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19760ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19760ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19760ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=19760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19760ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19760ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=19760ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=19760ms
fork_0->>philosopher_4: {:fork_granted, :fork_0}
Note over fork_0,philosopher_4: t=19760ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=19760ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=19760ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=19760ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=19760ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=19760ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19760ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=19760ms
philosopher_4->>philosopher_4: {:mumble, "I'm full!"}
Note over philosopher_4,philosopher_4: t=19760ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19760ms
philosopher_4->>fork_0: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=19760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19780ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19780ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19780ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19780ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19780ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19780ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=19780ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=19780ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=19780ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=19780ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19780ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=19780ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=19780ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19780ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=19780ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19780ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19780ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19780ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19780ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19780ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=19780ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=19780ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=19780ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=19780ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=19780ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19780ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=19780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19800ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19800ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19800ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19800ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19800ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19800ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19800ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19800ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19800ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=19800ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=19800ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=19800ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=19800ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=19800ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=19800ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19800ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=19800ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=19800ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=19800ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19800ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19800ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=19800ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=19800ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=19800ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19800ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19800ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=19800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19820ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19820ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19820ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19820ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19820ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19820ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19820ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19820ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19820ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=19820ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=19820ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=19820ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=19820ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=19820ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=19820ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19820ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=19820ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=19820ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=19820ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=19820ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19820ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=19820ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19820ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19820ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19840ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19840ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19840ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19840ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19840ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19840ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19840ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19840ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19840ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=19840ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=19840ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=19840ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=19840ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=19840ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=19840ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19840ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=19840ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=19840ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=19840ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=19840ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=19840ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=19840ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19840ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19840ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19840ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=19840ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19860ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19860ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19860ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19860ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19860ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19860ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19860ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19860ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19860ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=19860ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=19860ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=19860ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=19860ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=19860ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=19860ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19860ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=19860ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=19860ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=19860ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=19860ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19860ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=19860ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19860ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19860ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19880ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19880ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19880ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19880ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19880ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19880ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19880ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19880ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19880ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=19880ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=19880ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=19880ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=19880ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=19880ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=19880ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19880ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=19880ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=19880ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=19880ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=19880ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=19880ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=19880ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19880ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19880ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19880ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=19880ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19900ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19900ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19900ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19900ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19900ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19900ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19900ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19900ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19900ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=19900ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=19900ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=19900ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=19900ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=19900ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19900ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=19900ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=19900ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=19900ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=19900ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=19900ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=19900ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19900ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19900ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19900ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19920ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19920ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19920ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19920ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19920ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19920ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19920ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19920ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19920ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=19920ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=19920ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=19920ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=19920ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=19920ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=19920ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19920ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=19920ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=19920ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=19920ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=19920ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=19920ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=19920ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19920ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19920ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19920ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=19920ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19940ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19940ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19940ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19940ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19940ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19940ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19940ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19940ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19940ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19940ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=19940ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=19940ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=19940ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=19940ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=19940ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=19940ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19940ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=19940ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=19940ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=19940ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=19940ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19940ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=19940ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19940ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19940ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19940ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19960ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19960ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19960ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19960ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19960ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19960ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19960ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19960ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19960ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=19960ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=19960ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=19960ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=19960ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=19960ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=19960ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19960ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=19960ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=19960ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=19960ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=19960ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=19960ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=19960ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19960ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19960ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19960ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=19960ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=19980ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=19980ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=19980ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=19980ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=19980ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19980ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=19980ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19980ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19980ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=19980ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=19980ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=19980ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=19980ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=19980ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=19980ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=19980ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19980ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=19980ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=19980ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=19980ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=19980ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=19980ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=19980ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=19980ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=19980ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=19980ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20000ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20000ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20000ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20000ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20000ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20000ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20000ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20000ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20000ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=20000ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20000ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=20000ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=20000ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=20000ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20000ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20000ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=20000ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=20000ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20000ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=20000ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=20000ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20000ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20000ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20000ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20000ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20000ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20020ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20020ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20020ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20020ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20020ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20020ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20020ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20020ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20020ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20020ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=20020ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20020ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=20020ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=20020ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=20020ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=20020ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20020ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=20020ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=20020ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20020ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=20020ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20020ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20020ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20020ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20020ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20020ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20040ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20040ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20040ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20040ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20040ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20040ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20040ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20040ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20040ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=20040ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20040ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=20040ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=20040ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=20040ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20040ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20040ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=20040ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=20040ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20040ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=20040ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=20040ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20040ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20040ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20040ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20040ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20040ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20060ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20060ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20060ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20060ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20060ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20060ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20060ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20060ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20060ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20060ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=20060ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20060ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=20060ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=20060ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=20060ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=20060ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20060ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=20060ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=20060ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20060ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=20060ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20060ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20060ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20060ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20060ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20060ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20080ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20080ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20080ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20080ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20080ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20080ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20080ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20080ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20080ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=20080ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20080ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=20080ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=20080ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=20080ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20080ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20080ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=20080ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=20080ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20080ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=20080ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=20080ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20080ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20080ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20080ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20080ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20080ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20100ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20100ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20100ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20100ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20100ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20100ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20100ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20100ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20100ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=20100ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20100ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=20100ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=20100ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=20100ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=20100ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20100ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=20100ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=20100ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20100ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=20100ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20100ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20100ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20100ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20100ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20120ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20120ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20120ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20120ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20120ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20120ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20120ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20120ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20120ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=20120ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20120ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=20120ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=20120ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=20120ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20120ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20120ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=20120ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=20120ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20120ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=20120ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=20120ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20120ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20120ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20120ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20120ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20120ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20140ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20140ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20140ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20140ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20140ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20140ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20140ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20140ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20140ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20140ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=20140ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20140ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=20140ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=20140ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=20140ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=20140ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20140ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=20140ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=20140ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20140ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=20140ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20140ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20140ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20140ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20140ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20140ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20160ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20160ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20160ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20160ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20160ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20160ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20160ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20160ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20160ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20160ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=20160ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20160ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=20160ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=20160ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=20160ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20160ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20160ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=20160ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=20160ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20160ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=20160ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=20160ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20160ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20160ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20160ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20160ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20160ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20160ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20180ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20180ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20180ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20180ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20180ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20180ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20180ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20180ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20180ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=20180ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20180ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=20180ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=20180ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=20180ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=20180ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20180ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=20180ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=20180ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20180ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=20180ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20180ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20180ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20180ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20180ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20200ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20200ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20200ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20200ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20200ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20200ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20200ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20200ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20200ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20200ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=20200ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20200ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=20200ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=20200ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=20200ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20200ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20200ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=20200ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=20200ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20200ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=20200ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=20200ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20200ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20200ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20200ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20200ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20200ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20200ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20220ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20220ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20220ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20220ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20220ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20220ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20220ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20220ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20220ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=20220ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20220ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=20220ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=20220ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=20220ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=20220ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20220ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=20220ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=20220ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20220ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=20220ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20220ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20220ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20220ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20220ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20240ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20240ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20240ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20240ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20240ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20240ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20240ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20240ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20240ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=20240ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20240ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=20240ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=20240ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=20240ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20240ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20240ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=20240ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=20240ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20240ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=20240ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=20240ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20240ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20240ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20240ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20240ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20240ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20260ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20260ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20260ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20260ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20260ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20260ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20260ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20260ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20260ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20260ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=20260ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=20260ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20260ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=20260ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=20260ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=20260ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=20260ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20260ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=20260ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=20260ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=20260ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=20260ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20260ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20260ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20260ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=20260ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20280ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20280ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20280ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20280ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20280ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20280ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20280ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20280ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20280ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=20280ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20280ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=20280ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=20280ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=20280ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20280ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20280ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=20280ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=20280ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20280ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=20280ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=20280ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20280ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20280ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20280ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20280ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20280ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20300ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20300ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20300ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20300ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20300ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20300ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20300ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20300ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20300ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=20300ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20300ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=20300ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=20300ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=20300ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=20300ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20300ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=20300ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=20300ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20300ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=20300ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20300ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20300ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20300ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20300ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20320ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20320ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20320ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20320ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20320ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20320ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20320ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20320ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20320ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=20320ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20320ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=20320ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=20320ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=20320ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20320ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20320ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=20320ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=20320ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20320ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=20320ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=20320ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20320ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20320ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20320ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20320ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20320ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20340ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20340ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20340ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20340ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20340ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20340ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20340ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20340ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20340ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20340ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=20340ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20340ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=20340ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=20340ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=20340ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=20340ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20340ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=20340ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=20340ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20340ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=20340ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20340ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20340ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20340ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20340ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20340ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20360ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20360ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20360ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20360ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20360ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20360ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20360ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20360ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20360ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=20360ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20360ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=20360ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=20360ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=20360ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20360ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20360ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=20360ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=20360ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20360ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=20360ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=20360ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20360ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20360ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20360ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20360ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20360ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20380ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20380ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20380ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20380ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20380ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20380ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20380ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20380ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20380ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20380ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=20380ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20380ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=20380ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=20380ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=20380ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=20380ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20380ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=20380ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=20380ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20380ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=20380ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20380ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20380ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20380ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20380ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20380ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20400ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20400ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20400ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20400ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20400ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20400ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20400ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20400ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20400ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=20400ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20400ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=20400ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=20400ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=20400ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20400ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20400ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=20400ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=20400ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20400ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=20400ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=20400ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20400ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20400ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20400ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20400ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20400ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20420ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20420ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20420ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20420ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20420ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20420ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20420ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20420ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20420ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=20420ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20420ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=20420ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=20420ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=20420ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=20420ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20420ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=20420ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=20420ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20420ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=20420ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20420ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20420ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20420ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20420ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20440ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20440ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20440ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20440ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20440ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20440ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20440ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20440ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20440ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=20440ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20440ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=20440ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=20440ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=20440ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20440ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20440ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=20440ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=20440ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20440ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=20440ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=20440ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20440ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20440ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20440ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20440ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20440ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20460ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20460ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20460ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20460ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20460ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20460ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20460ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20460ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20460ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=20460ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20460ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=20460ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=20460ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=20460ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=20460ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20460ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=20460ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=20460ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20460ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=20460ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20460ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20460ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20460ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20460ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20480ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20480ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20480ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20480ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20480ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20480ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20480ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20480ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20480ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=20480ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20480ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=20480ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=20480ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=20480ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20480ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20480ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=20480ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=20480ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20480ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=20480ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=20480ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20480ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20480ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20480ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20480ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20480ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20500ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20500ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20500ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20500ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20500ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20500ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20500ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20500ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20500ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20500ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=20500ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20500ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=20500ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=20500ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=20500ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=20500ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20500ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=20500ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=20500ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20500ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=20500ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20500ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20500ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20500ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20500ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20500ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20520ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20520ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20520ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20520ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20520ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20520ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20520ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20520ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20520ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=20520ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20520ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=20520ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=20520ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=20520ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20520ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20520ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=20520ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=20520ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20520ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=20520ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=20520ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20520ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20520ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20520ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20520ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20520ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20540ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20540ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20540ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20540ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20540ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20540ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20540ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20540ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20540ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=20540ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20540ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=20540ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=20540ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=20540ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=20540ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20540ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=20540ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=20540ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20540ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=20540ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20540ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20540ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20540ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20540ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20560ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20560ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20560ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20560ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20560ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20560ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20560ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20560ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20560ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=20560ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20560ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=20560ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=20560ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=20560ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20560ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20560ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=20560ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=20560ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20560ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=20560ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=20560ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20560ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20560ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20560ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20560ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20560ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20580ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20580ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20580ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20580ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20580ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20580ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20580ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20580ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20580ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=20580ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20580ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=20580ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=20580ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=20580ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=20580ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20580ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=20580ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=20580ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20580ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=20580ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=20580ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20580ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20580ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20580ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20580ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=20580ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20600ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20600ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20600ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20600ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20600ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20600ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20600ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20600ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20600ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=20600ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20600ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=20600ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=20600ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=20600ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20600ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20600ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=20600ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=20600ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20600ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=20600ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=20600ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20600ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20600ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20600ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20600ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20600ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20620ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20620ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20620ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20620ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20620ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20620ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20620ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20620ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20620ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=20620ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20620ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=20620ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=20620ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=20620ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=20620ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20620ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=20620ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=20620ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20620ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=20620ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20620ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20620ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20620ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20620ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20640ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20640ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20640ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20640ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20640ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20640ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20640ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20640ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20640ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=20640ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20640ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=20640ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=20640ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=20640ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20640ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20640ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=20640ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=20640ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20640ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=20640ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=20640ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20640ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20640ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20640ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20640ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20640ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20660ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20660ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20660ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20660ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20660ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20660ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20660ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20660ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20660ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=20660ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20660ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=20660ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=20660ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=20660ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=20660ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20660ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=20660ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=20660ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20660ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=20660ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20660ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20660ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20660ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20660ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20680ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20680ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20680ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20680ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20680ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20680ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20680ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20680ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20680ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=20680ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20680ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=20680ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=20680ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=20680ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20680ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20680ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=20680ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=20680ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20680ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=20680ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=20680ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20680ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20680ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20680ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20680ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20680ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20700ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20700ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20700ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20700ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20700ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20700ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20700ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20700ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20700ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=20700ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20700ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=20700ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=20700ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=20700ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=20700ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20700ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=20700ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=20700ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20700ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=20700ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20700ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20700ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20700ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20700ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20720ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20720ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20720ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20720ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20720ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20720ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20720ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20720ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20720ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=20720ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20720ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=20720ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=20720ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=20720ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20720ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20720ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=20720ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=20720ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20720ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=20720ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=20720ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20720ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20720ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20720ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20720ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20720ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20740ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20740ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20740ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20740ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20740ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20740ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20740ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20740ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20740ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=20740ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20740ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=20740ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=20740ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=20740ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=20740ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20740ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=20740ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=20740ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20740ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=20740ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20740ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20740ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20740ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20740ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20760ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20760ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20760ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20760ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20760ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20760ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20760ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20760ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20760ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=20760ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20760ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=20760ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=20760ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=20760ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20760ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20760ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=20760ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=20760ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20760ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=20760ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=20760ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20760ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20760ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20760ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20760ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20760ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20780ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20780ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20780ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20780ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20780ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20780ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20780ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20780ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20780ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=20780ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20780ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=20780ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=20780ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=20780ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=20780ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20780ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=20780ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=20780ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20780ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=20780ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20780ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20780ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20780ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20780ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20800ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20800ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20800ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20800ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20800ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20800ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20800ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20800ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20800ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=20800ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20800ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=20800ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=20800ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=20800ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20800ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20800ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=20800ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=20800ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20800ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=20800ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=20800ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20800ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20800ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20800ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20800ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20800ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20820ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20820ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20820ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20820ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20820ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20820ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20820ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20820ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20820ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=20820ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20820ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=20820ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=20820ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=20820ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=20820ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20820ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=20820ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=20820ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20820ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20820ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=20820ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20820ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20820ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20820ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20840ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20840ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20840ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20840ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20840ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20840ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20840ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20840ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20840ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=20840ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20840ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=20840ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=20840ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20840ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20840ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=20840ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=20840ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=20840ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20840ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=20840ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=20840ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20840ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20840ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20840ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20840ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20840ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20860ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20860ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20860ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20860ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20860ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20860ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20860ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20860ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20860ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=20860ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20860ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=20860ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=20860ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=20860ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=20860ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20860ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=20860ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=20860ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20860ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=20860ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20860ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20860ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20860ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20860ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20880ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20880ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20880ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20880ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20880ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20880ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20880ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20880ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20880ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=20880ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20880ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=20880ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=20880ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=20880ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20880ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20880ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=20880ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=20880ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20880ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=20880ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=20880ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20880ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20880ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20880ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20880ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20880ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20900ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20900ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20900ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20900ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20900ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20900ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20900ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20900ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20900ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=20900ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20900ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=20900ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=20900ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=20900ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=20900ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20900ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=20900ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=20900ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20900ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=20900ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20900ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20900ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20900ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20900ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20920ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20920ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20920ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20920ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20920ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20920ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20920ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20920ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20920ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=20920ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20920ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=20920ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=20920ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=20920ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20920ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20920ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=20920ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=20920ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20920ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=20920ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=20920ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20920ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20920ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20920ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20920ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20920ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20940ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20940ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20940ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20940ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20940ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20940ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20940ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20940ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20940ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20940ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=20940ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20940ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=20940ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=20940ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=20940ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=20940ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20940ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=20940ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=20940ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20940ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20940ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=20940ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20940ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20940ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20940ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20940ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20960ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20960ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20960ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20960ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20960ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20960ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20960ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20960ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20960ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=20960ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20960ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=20960ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=20960ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20960ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20960ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=20960ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=20960ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=20960ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20960ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=20960ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=20960ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20960ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20960ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20960ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20960ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=20960ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=20980ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=20980ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=20980ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=20980ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=20980ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20980ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=20980ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20980ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20980ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=20980ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=20980ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=20980ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=20980ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=20980ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=20980ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=20980ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20980ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=20980ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=20980ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=20980ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=20980ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=20980ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=20980ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=20980ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=20980ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=20980ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21000ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21000ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21000ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21000ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21000ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21000ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21000ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21000ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21000ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=21000ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21000ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=21000ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=21000ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=21000ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21000ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21000ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=21000ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=21000ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21000ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=21000ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=21000ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21000ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21000ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21000ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21000ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21000ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21020ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21020ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21020ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21020ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21020ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21020ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21020ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21020ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21020ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21020ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=21020ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21020ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=21020ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=21020ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=21020ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=21020ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21020ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=21020ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=21020ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21020ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=21020ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21020ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21020ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21020ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21020ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21020ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21040ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21040ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21040ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21040ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21040ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21040ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21040ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21040ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21040ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=21040ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21040ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=21040ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=21040ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=21040ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21040ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21040ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=21040ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=21040ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21040ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=21040ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=21040ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21040ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21040ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21040ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21040ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21040ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21060ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21060ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21060ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21060ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21060ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21060ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21060ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21060ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21060ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21060ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=21060ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21060ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=21060ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=21060ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=21060ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=21060ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21060ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=21060ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=21060ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21060ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=21060ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21060ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21060ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21060ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21060ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21060ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21080ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21080ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21080ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21080ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21080ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21080ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21080ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21080ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21080ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=21080ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21080ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=21080ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=21080ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=21080ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21080ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21080ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=21080ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=21080ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21080ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=21080ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=21080ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21080ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21080ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21080ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21080ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21080ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21100ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21100ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21100ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21100ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21100ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21100ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21100ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21100ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21100ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=21100ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21100ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=21100ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=21100ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=21100ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=21100ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21100ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=21100ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=21100ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21100ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=21100ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21100ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21100ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21100ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21100ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21120ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21120ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21120ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21120ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21120ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21120ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21120ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21120ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21120ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=21120ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21120ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=21120ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=21120ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=21120ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21120ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21120ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=21120ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=21120ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21120ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=21120ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=21120ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21120ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21120ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21120ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21120ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21120ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21140ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21140ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21140ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21140ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21140ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21140ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21140ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21140ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21140ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21140ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=21140ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21140ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=21140ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=21140ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=21140ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=21140ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21140ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=21140ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=21140ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21140ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=21140ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21140ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21140ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21140ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21140ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21140ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21160ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21160ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21160ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21160ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21160ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21160ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21160ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21160ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21160ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21160ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=21160ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21160ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=21160ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=21160ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=21160ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21160ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21160ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=21160ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=21160ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21160ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=21160ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=21160ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21160ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21160ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21160ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21160ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21160ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21160ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21180ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21180ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21180ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21180ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21180ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21180ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21180ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21180ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21180ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=21180ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21180ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=21180ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=21180ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=21180ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=21180ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21180ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=21180ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=21180ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21180ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=21180ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21180ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21180ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21180ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21180ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21200ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21200ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21200ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21200ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21200ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21200ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21200ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21200ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21200ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21200ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=21200ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21200ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=21200ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=21200ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=21200ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21200ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21200ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=21200ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=21200ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21200ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=21200ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=21200ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21200ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21200ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21200ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21200ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21200ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21200ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21220ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21220ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21220ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21220ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21220ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21220ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21220ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21220ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21220ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=21220ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21220ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=21220ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=21220ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=21220ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=21220ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21220ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=21220ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=21220ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21220ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=21220ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21220ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21220ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21220ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21220ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21240ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21240ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21240ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21240ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21240ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21240ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21240ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21240ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21240ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=21240ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21240ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=21240ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=21240ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=21240ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21240ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21240ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=21240ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=21240ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21240ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=21240ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=21240ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21240ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21240ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21240ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21240ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21240ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21260ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21260ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21260ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21260ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21260ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21260ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21260ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21260ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21260ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21260ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=21260ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=21260ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21260ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=21260ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=21260ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21260ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=21260ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21260ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=21260ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=21260ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21260ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=21260ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21260ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21260ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21260ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21260ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21260ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21260ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21280ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21280ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21280ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21280ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21280ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21280ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21280ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21280ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21280ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=21280ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21280ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=21280ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=21280ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=21280ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21280ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21280ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=21280ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=21280ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21280ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=21280ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=21280ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21280ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21280ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21280ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21280ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21280ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21300ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21300ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21300ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21300ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21300ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21300ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21300ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21300ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21300ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=21300ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21300ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=21300ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=21300ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=21300ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=21300ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21300ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=21300ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=21300ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21300ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=21300ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21300ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21300ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21300ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21300ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21320ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21320ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21320ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21320ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21320ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21320ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21320ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21320ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21320ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=21320ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21320ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=21320ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=21320ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=21320ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21320ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21320ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=21320ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=21320ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21320ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=21320ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=21320ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21320ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21320ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21320ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21320ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21320ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21340ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21340ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21340ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21340ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21340ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21340ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21340ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21340ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21340ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21340ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=21340ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21340ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=21340ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=21340ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=21340ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=21340ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21340ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=21340ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=21340ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21340ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=21340ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21340ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21340ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21340ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21340ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21340ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21360ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21360ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21360ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21360ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21360ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21360ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21360ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21360ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21360ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=21360ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21360ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=21360ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=21360ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=21360ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21360ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21360ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=21360ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=21360ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21360ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=21360ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=21360ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21360ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21360ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21360ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21360ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21360ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21380ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21380ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21380ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21380ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21380ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21380ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21380ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21380ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21380ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21380ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=21380ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21380ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=21380ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=21380ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=21380ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=21380ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21380ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=21380ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=21380ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21380ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=21380ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21380ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21380ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21380ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21380ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21380ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21400ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21400ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21400ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21400ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21400ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21400ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21400ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21400ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21400ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=21400ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21400ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=21400ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=21400ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=21400ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21400ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21400ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=21400ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=21400ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21400ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=21400ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=21400ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21400ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21400ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21400ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21400ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21400ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21420ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21420ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21420ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21420ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21420ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21420ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21420ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21420ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21420ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=21420ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21420ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=21420ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=21420ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=21420ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=21420ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21420ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=21420ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=21420ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21420ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=21420ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21420ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21420ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21420ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21420ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21440ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21440ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21440ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21440ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21440ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21440ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21440ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21440ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21440ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=21440ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21440ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=21440ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=21440ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=21440ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21440ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21440ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=21440ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=21440ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21440ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=21440ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=21440ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21440ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21440ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21440ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21440ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21440ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21460ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21460ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21460ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21460ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21460ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21460ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21460ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21460ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21460ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=21460ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21460ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=21460ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=21460ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=21460ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=21460ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21460ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=21460ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=21460ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21460ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=21460ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21460ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21460ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21460ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21460ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21480ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21480ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21480ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21480ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21480ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21480ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21480ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21480ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21480ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=21480ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21480ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=21480ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=21480ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=21480ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21480ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21480ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=21480ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=21480ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21480ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=21480ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=21480ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21480ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21480ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21480ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21480ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21480ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21500ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21500ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21500ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21500ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21500ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21500ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21500ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21500ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21500ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21500ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=21500ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21500ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=21500ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=21500ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=21500ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=21500ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21500ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=21500ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=21500ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21500ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=21500ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21500ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21500ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21500ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21500ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21500ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21520ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21520ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21520ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21520ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21520ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21520ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21520ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21520ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21520ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=21520ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21520ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=21520ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=21520ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=21520ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21520ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21520ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=21520ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=21520ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21520ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=21520ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=21520ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21520ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21520ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21520ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21520ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21520ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21540ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21540ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21540ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21540ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21540ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21540ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21540ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21540ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21540ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=21540ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21540ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=21540ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=21540ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=21540ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=21540ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21540ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=21540ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=21540ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21540ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=21540ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21540ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21540ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21540ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21540ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21560ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21560ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21560ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21560ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21560ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21560ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21560ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21560ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21560ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=21560ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21560ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=21560ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=21560ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=21560ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21560ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21560ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=21560ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=21560ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21560ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=21560ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=21560ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21560ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21560ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21560ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21560ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21560ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21580ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21580ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21580ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21580ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21580ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21580ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21580ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21580ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21580ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=21580ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21580ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=21580ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=21580ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=21580ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=21580ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21580ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=21580ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=21580ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21580ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=21580ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21580ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21580ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21580ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21580ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21600ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21600ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21600ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21600ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21600ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21600ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21600ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21600ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21600ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=21600ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21600ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=21600ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=21600ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=21600ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21600ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21600ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=21600ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=21600ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21600ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=21600ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=21600ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21600ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21600ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21600ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21600ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21600ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21620ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21620ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21620ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21620ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21620ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21620ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21620ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21620ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21620ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=21620ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21620ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=21620ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=21620ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=21620ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=21620ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21620ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=21620ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=21620ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21620ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=21620ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21620ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21620ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21620ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21620ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21640ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21640ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21640ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21640ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21640ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21640ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21640ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21640ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21640ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=21640ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21640ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=21640ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=21640ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=21640ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21640ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21640ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=21640ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=21640ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21640ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=21640ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=21640ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21640ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21640ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21640ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21640ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21640ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21660ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21660ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21660ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21660ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21660ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21660ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21660ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21660ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21660ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=21660ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21660ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=21660ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=21660ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=21660ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=21660ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21660ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=21660ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=21660ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21660ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=21660ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21660ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21660ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21660ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21660ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21680ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21680ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21680ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21680ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21680ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21680ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21680ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21680ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21680ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=21680ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21680ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=21680ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=21680ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=21680ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21680ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21680ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=21680ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=21680ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21680ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=21680ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=21680ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21680ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21680ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21680ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21680ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21680ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21700ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21700ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21700ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21700ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21700ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21700ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21700ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21700ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21700ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=21700ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21700ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=21700ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=21700ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=21700ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=21700ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21700ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=21700ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=21700ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21700ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=21700ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21700ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21700ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21700ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21700ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21720ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21720ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21720ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21720ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21720ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21720ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21720ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21720ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21720ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=21720ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=21720ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21720ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=21720ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=21720ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=21720ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21720ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21720ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=21720ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21720ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=21720ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=21720ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21720ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21720ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21720ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21720ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=21720ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21740ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21740ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21740ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21740ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21740ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21740ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21740ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21740ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21740ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=21740ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21740ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=21740ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=21740ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=21740ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=21740ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21740ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=21740ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=21740ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21740ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=21740ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21740ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21740ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21740ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21740ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21760ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21760ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21760ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21760ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21760ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21760ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21760ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21760ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21760ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=21760ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21760ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=21760ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=21760ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=21760ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21760ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21760ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=21760ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=21760ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21760ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=21760ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=21760ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21760ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21760ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21760ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21760ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21760ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21780ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21780ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21780ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21780ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21780ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21780ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21780ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21780ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21780ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=21780ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21780ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=21780ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=21780ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=21780ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=21780ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21780ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=21780ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=21780ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21780ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=21780ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21780ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21780ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21780ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21780ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21800ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21800ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21800ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21800ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21800ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21800ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21800ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21800ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21800ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=21800ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21800ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=21800ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=21800ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=21800ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21800ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21800ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=21800ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=21800ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21800ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=21800ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=21800ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21800ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21800ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21800ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21800ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21800ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21820ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21820ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21820ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21820ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21820ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21820ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21820ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21820ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21820ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=21820ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21820ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=21820ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=21820ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=21820ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=21820ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21820ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=21820ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=21820ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21820ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=21820ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21820ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21820ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21820ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21820ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21840ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21840ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21840ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21840ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21840ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21840ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21840ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21840ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21840ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=21840ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21840ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=21840ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=21840ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=21840ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21840ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21840ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=21840ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=21840ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21840ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=21840ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=21840ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21840ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21840ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21840ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21840ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21840ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21860ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21860ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21860ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21860ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21860ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21860ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21860ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21860ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21860ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=21860ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21860ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=21860ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=21860ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=21860ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=21860ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21860ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=21860ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=21860ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21860ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=21860ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21860ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21860ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21860ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21860ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21880ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21880ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21880ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21880ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21880ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21880ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21880ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21880ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21880ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=21880ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21880ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=21880ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=21880ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=21880ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21880ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21880ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=21880ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=21880ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21880ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=21880ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=21880ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21880ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21880ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21880ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21880ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21880ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21900ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21900ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21900ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21900ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21900ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21900ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21900ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21900ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21900ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=21900ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21900ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=21900ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=21900ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=21900ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=21900ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21900ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=21900ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=21900ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21900ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=21900ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21900ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21900ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21900ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21900ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21920ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21920ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21920ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21920ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21920ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21920ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21920ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21920ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21920ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=21920ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=21920ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21920ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=21920ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=21920ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=21920ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21920ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21920ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=21920ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21920ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=21920ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=21920ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21920ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21920ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21920ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21920ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=21920ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21940ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21940ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21940ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21940ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21940ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21940ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21940ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21940ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21940ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21940ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=21940ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21940ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=21940ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=21940ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=21940ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=21940ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21940ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=21940ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=21940ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21940ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=21940ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21940ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21940ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21940ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21940ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21940ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21960ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21960ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21960ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21960ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21960ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21960ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21960ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21960ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21960ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=21960ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21960ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=21960ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=21960ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=21960ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21960ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21960ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=21960ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=21960ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21960ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=21960ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=21960ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21960ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21960ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21960ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21960ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=21960ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=21980ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=21980ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=21980ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=21980ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=21980ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21980ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=21980ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21980ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21980ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=21980ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=21980ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=21980ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=21980ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=21980ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=21980ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=21980ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21980ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=21980ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=21980ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=21980ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=21980ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=21980ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=21980ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=21980ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=21980ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=21980ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22000ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22000ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22000ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22000ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22000ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22000ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22000ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22000ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22000ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=22000ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22000ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=22000ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=22000ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=22000ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22000ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22000ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=22000ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=22000ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22000ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=22000ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=22000ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22000ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22000ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22000ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22000ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22000ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22020ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22020ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22020ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22020ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22020ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22020ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22020ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22020ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22020ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22020ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=22020ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22020ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=22020ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=22020ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=22020ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=22020ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22020ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=22020ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=22020ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22020ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=22020ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22020ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22020ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22020ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22020ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22020ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22040ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22040ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22040ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22040ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22040ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22040ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22040ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22040ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22040ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=22040ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22040ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=22040ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=22040ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=22040ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22040ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22040ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=22040ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=22040ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22040ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=22040ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=22040ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22040ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22040ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22040ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22040ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22040ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22060ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22060ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22060ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22060ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22060ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22060ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22060ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22060ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22060ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22060ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=22060ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22060ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=22060ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=22060ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=22060ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=22060ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22060ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=22060ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=22060ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22060ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=22060ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22060ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22060ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22060ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22060ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22060ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22080ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22080ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22080ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22080ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22080ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22080ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22080ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22080ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22080ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=22080ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=22080ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22080ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=22080ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=22080ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=22080ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22080ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22080ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=22080ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22080ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=22080ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=22080ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22080ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22080ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22080ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22080ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=22080ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22100ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22100ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22100ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22100ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22100ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22100ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22100ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22100ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22100ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=22100ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22100ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=22100ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=22100ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=22100ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=22100ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22100ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=22100ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=22100ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22100ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=22100ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22100ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22100ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22100ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22100ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22120ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22120ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22120ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22120ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22120ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22120ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22120ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22120ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22120ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=22120ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22120ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=22120ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=22120ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=22120ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22120ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22120ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=22120ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=22120ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22120ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=22120ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=22120ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22120ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22120ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22120ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22120ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22120ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22140ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22140ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22140ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22140ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22140ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22140ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22140ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22140ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22140ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22140ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=22140ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22140ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=22140ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=22140ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=22140ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=22140ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22140ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=22140ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=22140ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22140ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=22140ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22140ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22140ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22140ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22140ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22140ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22160ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22160ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22160ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22160ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22160ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22160ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22160ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22160ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22160ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22160ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=22160ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22160ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=22160ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=22160ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=22160ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22160ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22160ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=22160ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=22160ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22160ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=22160ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=22160ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22160ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22160ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22160ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22160ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22160ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22160ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22180ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22180ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22180ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22180ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22180ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22180ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22180ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22180ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22180ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=22180ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22180ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=22180ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=22180ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=22180ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=22180ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22180ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=22180ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=22180ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22180ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=22180ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22180ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22180ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22180ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22180ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22200ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22200ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22200ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22200ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22200ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22200ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22200ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22200ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22200ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22200ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=22200ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22200ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=22200ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=22200ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=22200ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22200ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22200ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=22200ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=22200ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22200ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=22200ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=22200ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22200ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22200ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22200ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22200ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22200ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22200ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22220ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22220ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22220ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22220ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22220ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22220ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22220ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22220ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22220ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=22220ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22220ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=22220ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=22220ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=22220ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=22220ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22220ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=22220ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=22220ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22220ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=22220ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22220ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22220ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22220ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22220ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22240ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22240ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22240ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22240ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22240ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22240ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22240ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22240ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22240ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=22240ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22240ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=22240ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=22240ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=22240ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22240ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22240ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=22240ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=22240ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22240ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=22240ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=22240ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22240ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22240ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22240ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22240ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22240ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22260ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22260ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22260ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22260ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22260ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22260ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22260ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22260ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22260ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22260ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=22260ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22260ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=22260ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=22260ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=22260ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=22260ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22260ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=22260ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=22260ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22260ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=22260ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22260ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22260ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22260ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22260ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22260ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22280ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22280ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22280ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22280ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22280ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22280ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22280ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22280ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22280ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=22280ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22280ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=22280ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=22280ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=22280ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22280ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22280ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=22280ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=22280ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22280ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=22280ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=22280ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22280ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22280ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22280ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22280ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22280ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22300ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22300ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22300ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22300ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22300ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22300ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22300ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22300ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22300ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=22300ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22300ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=22300ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=22300ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=22300ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=22300ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22300ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=22300ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=22300ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22300ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=22300ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22300ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22300ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22300ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22300ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22320ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22320ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22320ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22320ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22320ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22320ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22320ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22320ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22320ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=22320ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22320ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=22320ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=22320ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=22320ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22320ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22320ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=22320ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=22320ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22320ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=22320ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=22320ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22320ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22320ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22320ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22320ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22320ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22340ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22340ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22340ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22340ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22340ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22340ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22340ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22340ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22340ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22340ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=22340ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22340ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=22340ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=22340ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=22340ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=22340ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22340ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=22340ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=22340ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22340ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=22340ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22340ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22340ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22340ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22340ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22340ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22360ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22360ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22360ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22360ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22360ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22360ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22360ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22360ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22360ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=22360ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22360ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=22360ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=22360ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=22360ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22360ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22360ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=22360ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=22360ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22360ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=22360ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=22360ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22360ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22360ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22360ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22360ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22360ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22380ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22380ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22380ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22380ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22380ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22380ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22380ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22380ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22380ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22380ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=22380ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=22380ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22380ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=22380ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=22380ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=22380ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=22380ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22380ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=22380ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=22380ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=22380ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=22380ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22380ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22380ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22380ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=22380ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22400ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22400ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22400ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22400ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22400ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22400ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22400ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22400ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22400ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=22400ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22400ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=22400ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=22400ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=22400ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22400ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22400ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=22400ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=22400ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22400ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=22400ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=22400ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22400ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22400ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22400ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22400ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22400ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22420ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22420ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22420ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22420ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22420ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22420ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22420ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22420ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22420ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=22420ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22420ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=22420ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=22420ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=22420ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=22420ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22420ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=22420ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=22420ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22420ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=22420ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22420ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22420ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22420ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22420ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22440ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22440ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22440ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22440ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22440ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22440ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22440ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22440ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22440ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=22440ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22440ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=22440ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=22440ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=22440ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22440ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22440ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=22440ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=22440ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22440ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=22440ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=22440ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22440ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22440ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22440ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22440ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22440ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22460ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22460ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22460ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22460ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22460ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22460ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22460ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22460ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22460ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=22460ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22460ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=22460ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=22460ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=22460ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=22460ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22460ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=22460ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=22460ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22460ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=22460ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22460ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22460ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22460ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22460ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22480ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22480ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22480ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22480ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22480ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22480ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22480ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22480ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22480ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=22480ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22480ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=22480ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=22480ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=22480ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22480ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22480ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=22480ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=22480ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22480ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=22480ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=22480ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22480ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22480ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22480ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22480ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22480ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22500ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22500ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22500ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22500ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22500ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22500ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22500ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22500ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22500ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22500ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=22500ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22500ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=22500ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=22500ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=22500ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=22500ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22500ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=22500ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=22500ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22500ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=22500ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22500ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22500ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22500ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22500ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22500ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22520ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22520ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22520ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22520ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22520ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22520ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22520ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22520ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22520ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=22520ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22520ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=22520ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=22520ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=22520ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22520ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22520ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=22520ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=22520ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22520ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=22520ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=22520ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22520ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22520ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22520ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22520ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22520ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22540ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22540ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22540ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22540ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22540ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22540ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22540ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22540ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22540ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=22540ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22540ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=22540ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=22540ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=22540ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=22540ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22540ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=22540ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=22540ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22540ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=22540ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22540ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22540ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22540ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22540ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22560ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22560ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22560ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22560ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22560ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22560ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22560ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22560ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22560ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=22560ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22560ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=22560ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=22560ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=22560ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22560ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22560ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=22560ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=22560ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22560ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=22560ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=22560ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22560ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22560ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22560ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22560ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22560ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22580ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22580ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22580ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22580ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22580ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22580ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22580ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22580ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22580ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=22580ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22580ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=22580ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=22580ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=22580ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=22580ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22580ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=22580ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=22580ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22580ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=22580ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22580ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22580ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22580ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22580ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22600ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22600ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22600ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22600ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22600ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22600ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22600ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22600ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22600ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=22600ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22600ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=22600ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=22600ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=22600ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22600ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22600ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=22600ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=22600ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22600ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=22600ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=22600ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22600ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22600ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22600ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22600ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22600ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22620ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22620ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22620ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22620ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22620ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22620ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22620ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22620ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22620ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=22620ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22620ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=22620ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=22620ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=22620ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=22620ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22620ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=22620ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=22620ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22620ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=22620ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22620ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22620ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22620ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22620ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22640ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22640ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22640ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22640ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22640ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22640ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22640ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22640ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22640ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=22640ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22640ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=22640ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=22640ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=22640ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22640ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22640ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=22640ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=22640ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22640ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=22640ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=22640ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22640ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22640ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22640ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22640ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22640ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22660ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22660ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22660ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22660ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22660ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22660ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22660ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22660ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22660ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=22660ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22660ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=22660ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=22660ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=22660ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=22660ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22660ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=22660ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=22660ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22660ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=22660ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22660ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22660ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22660ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22660ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22680ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22680ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22680ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22680ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22680ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22680ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22680ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22680ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22680ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=22680ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22680ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=22680ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=22680ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=22680ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22680ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22680ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=22680ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=22680ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22680ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=22680ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=22680ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22680ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22680ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22680ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22680ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22680ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22700ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22700ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22700ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22700ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22700ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22700ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22700ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22700ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22700ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=22700ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22700ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=22700ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=22700ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=22700ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=22700ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22700ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=22700ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=22700ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22700ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=22700ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22700ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22700ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22700ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22700ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22720ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22720ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22720ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22720ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22720ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22720ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22720ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22720ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22720ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=22720ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22720ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=22720ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=22720ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=22720ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22720ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22720ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=22720ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=22720ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22720ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=22720ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=22720ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22720ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22720ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22720ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22720ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22720ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22740ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22740ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22740ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22740ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22740ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22740ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22740ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22740ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22740ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=22740ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=22740ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22740ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=22740ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=22740ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22740ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=22740ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22740ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=22740ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=22740ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22740ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=22740ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22740ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22740ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22740ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22740ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22740ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22760ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22760ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22760ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22760ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22760ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22760ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22760ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22760ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22760ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=22760ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22760ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=22760ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=22760ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=22760ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22760ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22760ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=22760ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=22760ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22760ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=22760ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=22760ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22760ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22760ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22760ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22760ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22760ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22780ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22780ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22780ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22780ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22780ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22780ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22780ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22780ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22780ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=22780ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22780ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=22780ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=22780ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=22780ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=22780ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22780ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=22780ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=22780ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22780ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=22780ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22780ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22780ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22780ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22780ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22800ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22800ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22800ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22800ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22800ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22800ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22800ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22800ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22800ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=22800ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22800ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=22800ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=22800ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=22800ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22800ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22800ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=22800ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=22800ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22800ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=22800ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=22800ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22800ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22800ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22800ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22800ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22800ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22820ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22820ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22820ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22820ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22820ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22820ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22820ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22820ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22820ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=22820ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22820ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=22820ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=22820ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=22820ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=22820ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22820ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=22820ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=22820ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22820ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=22820ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22820ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22820ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22820ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22820ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22840ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22840ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22840ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22840ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22840ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22840ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22840ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22840ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22840ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=22840ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22840ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=22840ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=22840ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=22840ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22840ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22840ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=22840ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=22840ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22840ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=22840ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=22840ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22840ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22840ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22840ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22840ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22840ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22860ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22860ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22860ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22860ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22860ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22860ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22860ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22860ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22860ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=22860ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22860ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=22860ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=22860ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=22860ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=22860ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22860ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=22860ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=22860ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22860ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=22860ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22860ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22860ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22860ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22860ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22880ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22880ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22880ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22880ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22880ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22880ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22880ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22880ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22880ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=22880ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22880ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=22880ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=22880ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=22880ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22880ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22880ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=22880ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=22880ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22880ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=22880ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=22880ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22880ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22880ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22880ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22880ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22880ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22900ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22900ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22900ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22900ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22900ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22900ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22900ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22900ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22900ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=22900ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22900ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=22900ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=22900ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=22900ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=22900ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22900ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=22900ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=22900ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22900ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=22900ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22900ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22900ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22900ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22900ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22920ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22920ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22920ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22920ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22920ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22920ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22920ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22920ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22920ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=22920ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22920ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=22920ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=22920ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=22920ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22920ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22920ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=22920ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=22920ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22920ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=22920ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=22920ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22920ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22920ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22920ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22920ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22920ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22940ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22940ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22940ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22940ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22940ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22940ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22940ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22940ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22940ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22940ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=22940ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22940ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=22940ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=22940ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=22940ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=22940ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22940ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=22940ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=22940ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22940ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=22940ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22940ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22940ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22940ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22940ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22940ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22960ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22960ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22960ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22960ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22960ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22960ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22960ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22960ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22960ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=22960ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22960ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=22960ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=22960ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=22960ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22960ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22960ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=22960ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=22960ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=22960ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=22960ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=22960ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=22960ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22960ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22960ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22960ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=22960ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=22980ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=22980ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=22980ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=22980ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=22980ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22980ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=22980ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22980ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22980ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=22980ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=22980ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=22980ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=22980ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=22980ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=22980ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=22980ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=22980ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=22980ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=22980ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=22980ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=22980ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=22980ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=22980ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=22980ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=22980ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=22980ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23000ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23000ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23000ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23000ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23000ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23000ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23000ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23000ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23000ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=23000ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23000ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=23000ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=23000ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=23000ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23000ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23000ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=23000ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=23000ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23000ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=23000ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=23000ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23000ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23000ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23000ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23000ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23000ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23020ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23020ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23020ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23020ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23020ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23020ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23020ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23020ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23020ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23020ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=23020ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23020ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=23020ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=23020ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=23020ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=23020ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23020ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=23020ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=23020ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23020ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=23020ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23020ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23020ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23020ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23020ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23020ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23040ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23040ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23040ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23040ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23040ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23040ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23040ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23040ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23040ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=23040ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23040ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=23040ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=23040ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=23040ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23040ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23040ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=23040ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=23040ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23040ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=23040ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=23040ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23040ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23040ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23040ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23040ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23040ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23060ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23060ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23060ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23060ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23060ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23060ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23060ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23060ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23060ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23060ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=23060ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23060ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=23060ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=23060ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=23060ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=23060ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23060ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=23060ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=23060ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23060ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=23060ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23060ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23060ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23060ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23060ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23060ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23080ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23080ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23080ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23080ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23080ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23080ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23080ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23080ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23080ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=23080ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23080ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=23080ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=23080ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=23080ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23080ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23080ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=23080ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=23080ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23080ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=23080ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=23080ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23080ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23080ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23080ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23080ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23080ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23100ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23100ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23100ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23100ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23100ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23100ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23100ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23100ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23100ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=23100ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23100ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=23100ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=23100ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=23100ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=23100ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23100ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=23100ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=23100ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23100ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=23100ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23100ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23100ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23100ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23100ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23120ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23120ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23120ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23120ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23120ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23120ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23120ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23120ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23120ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=23120ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23120ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=23120ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=23120ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=23120ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23120ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23120ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=23120ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=23120ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23120ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=23120ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=23120ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23120ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23120ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23120ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23120ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23120ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23140ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23140ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23140ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23140ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23140ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23140ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23140ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23140ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23140ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23140ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=23140ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23140ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=23140ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=23140ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=23140ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=23140ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23140ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=23140ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=23140ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23140ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=23140ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23140ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23140ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23140ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23140ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23140ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23160ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23160ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23160ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23160ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23160ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23160ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23160ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23160ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23160ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23160ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=23160ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23160ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=23160ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=23160ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=23160ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23160ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23160ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=23160ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=23160ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23160ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=23160ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=23160ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23160ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23160ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23160ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23160ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23160ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23160ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23180ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23180ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23180ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23180ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23180ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23180ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23180ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23180ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23180ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=23180ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23180ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=23180ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=23180ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=23180ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=23180ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23180ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=23180ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=23180ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23180ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=23180ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23180ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23180ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23180ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23180ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23200ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23200ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23200ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23200ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23200ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23200ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23200ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23200ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23200ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23200ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=23200ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23200ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=23200ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=23200ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=23200ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23200ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23200ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=23200ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=23200ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23200ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=23200ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=23200ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23200ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23200ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23200ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23200ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23200ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23200ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23220ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23220ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23220ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23220ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23220ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23220ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23220ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23220ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23220ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=23220ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23220ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=23220ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=23220ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=23220ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=23220ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23220ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=23220ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=23220ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23220ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=23220ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23220ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23220ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23220ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23220ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23240ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23240ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23240ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23240ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23240ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23240ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23240ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23240ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23240ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=23240ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23240ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=23240ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=23240ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=23240ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23240ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23240ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=23240ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=23240ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23240ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=23240ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=23240ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23240ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23240ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23240ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23240ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23240ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23260ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23260ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23260ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23260ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23260ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23260ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23260ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23260ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23260ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23260ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=23260ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=23260ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23260ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=23260ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=23260ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=23260ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=23260ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23260ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=23260ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=23260ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=23260ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=23260ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=23260ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23260ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23260ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23260ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=23260ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=23260ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23280ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23280ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23280ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23280ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23280ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23280ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23280ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23280ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23280ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=23280ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23280ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=23280ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=23280ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=23280ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23280ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23280ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=23280ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=23280ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23280ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=23280ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=23280ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23280ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23280ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23280ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23280ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23280ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23300ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23300ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23300ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23300ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23300ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23300ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23300ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23300ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23300ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=23300ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23300ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=23300ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=23300ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=23300ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=23300ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23300ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=23300ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=23300ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23300ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=23300ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23300ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23300ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23300ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23300ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23320ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23320ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23320ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23320ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23320ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23320ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23320ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23320ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23320ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=23320ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23320ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=23320ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=23320ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=23320ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23320ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23320ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=23320ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=23320ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23320ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=23320ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=23320ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23320ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23320ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23320ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23320ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23320ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23340ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23340ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23340ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23340ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23340ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23340ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23340ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23340ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23340ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23340ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=23340ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23340ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=23340ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=23340ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=23340ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=23340ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23340ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=23340ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=23340ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23340ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=23340ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23340ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23340ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23340ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23340ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23340ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23360ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23360ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23360ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23360ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23360ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23360ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23360ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23360ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23360ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=23360ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23360ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=23360ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=23360ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=23360ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23360ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23360ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=23360ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=23360ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23360ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=23360ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=23360ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23360ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23360ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23360ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23360ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23360ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23380ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23380ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23380ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23380ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23380ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23380ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23380ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23380ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23380ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23380ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=23380ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23380ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=23380ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=23380ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=23380ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=23380ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23380ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=23380ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=23380ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23380ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=23380ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23380ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23380ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23380ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23380ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23380ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23400ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23400ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23400ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23400ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23400ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23400ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23400ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23400ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23400ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=23400ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23400ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=23400ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=23400ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=23400ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23400ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23400ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=23400ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=23400ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23400ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=23400ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=23400ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23400ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23400ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23400ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23400ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23400ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23420ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23420ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23420ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23420ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23420ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23420ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23420ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23420ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23420ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=23420ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23420ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=23420ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=23420ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=23420ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=23420ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23420ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=23420ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=23420ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23420ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=23420ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23420ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23420ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23420ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23420ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23440ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23440ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23440ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23440ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23440ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23440ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23440ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23440ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23440ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=23440ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23440ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=23440ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=23440ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=23440ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23440ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23440ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=23440ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=23440ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23440ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=23440ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=23440ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23440ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23440ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23440ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23440ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23440ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23460ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23460ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23460ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23460ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23460ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23460ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23460ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23460ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23460ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=23460ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23460ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=23460ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=23460ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=23460ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=23460ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23460ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=23460ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=23460ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23460ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=23460ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23460ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23460ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23460ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23460ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23480ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23480ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23480ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23480ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23480ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23480ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23480ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23480ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23480ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=23480ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23480ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=23480ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=23480ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=23480ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23480ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23480ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=23480ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=23480ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23480ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=23480ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=23480ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23480ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23480ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23480ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23480ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23480ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23500ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23500ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23500ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23500ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23500ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23500ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23500ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23500ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23500ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23500ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=23500ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23500ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=23500ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=23500ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=23500ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=23500ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23500ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=23500ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=23500ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23500ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=23500ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23500ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23500ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23500ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23500ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23500ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23520ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23520ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23520ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23520ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23520ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23520ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23520ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23520ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23520ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=23520ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23520ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=23520ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=23520ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=23520ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23520ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23520ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=23520ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=23520ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23520ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=23520ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=23520ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23520ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23520ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23520ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23520ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23520ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23540ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23540ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23540ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23540ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23540ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23540ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23540ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23540ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23540ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=23540ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23540ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=23540ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=23540ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=23540ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=23540ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23540ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=23540ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=23540ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23540ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=23540ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23540ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23540ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23540ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23540ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23560ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23560ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23560ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23560ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23560ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23560ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23560ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23560ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23560ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=23560ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23560ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=23560ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=23560ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=23560ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23560ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23560ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=23560ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=23560ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23560ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=23560ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=23560ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23560ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23560ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23560ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23560ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23560ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23580ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23580ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23580ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23580ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23580ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23580ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23580ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23580ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23580ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=23580ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23580ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=23580ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=23580ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=23580ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=23580ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23580ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=23580ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=23580ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23580ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=23580ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23580ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23580ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23580ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23580ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23600ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23600ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23600ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23600ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23600ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23600ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23600ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23600ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23600ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=23600ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23600ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=23600ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=23600ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=23600ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23600ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23600ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=23600ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=23600ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23600ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=23600ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=23600ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23600ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23600ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23600ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23600ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23600ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23620ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23620ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23620ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23620ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23620ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23620ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23620ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23620ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23620ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=23620ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23620ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=23620ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=23620ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=23620ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=23620ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23620ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=23620ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=23620ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23620ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=23620ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23620ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23620ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23620ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23620ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23640ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23640ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23640ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23640ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23640ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23640ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23640ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23640ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23640ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=23640ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23640ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=23640ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=23640ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=23640ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23640ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23640ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=23640ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=23640ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23640ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=23640ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=23640ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23640ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23640ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23640ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23640ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23640ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23660ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23660ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23660ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23660ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23660ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23660ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23660ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23660ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23660ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=23660ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23660ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=23660ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=23660ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=23660ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=23660ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23660ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=23660ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=23660ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23660ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=23660ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23660ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23660ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23660ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23660ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23680ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23680ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23680ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23680ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23680ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23680ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23680ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23680ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23680ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=23680ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23680ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=23680ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=23680ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=23680ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23680ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23680ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=23680ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=23680ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23680ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=23680ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=23680ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23680ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23680ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23680ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23680ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23680ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23700ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23700ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23700ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23700ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23700ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23700ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23700ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23700ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23700ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=23700ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23700ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=23700ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=23700ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=23700ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=23700ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23700ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=23700ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=23700ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23700ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=23700ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23700ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23700ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23700ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23700ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23720ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23720ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23720ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23720ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23720ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23720ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23720ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23720ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23720ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=23720ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23720ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=23720ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=23720ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=23720ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23720ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23720ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=23720ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=23720ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23720ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=23720ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=23720ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23720ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23720ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23720ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23720ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23720ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23740ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23740ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23740ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23740ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23740ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23740ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23740ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23740ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23740ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=23740ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23740ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=23740ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=23740ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=23740ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=23740ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23740ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=23740ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=23740ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23740ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=23740ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23740ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23740ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23740ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23740ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23760ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23760ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23760ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23760ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23760ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23760ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23760ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23760ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23760ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=23760ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23760ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=23760ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=23760ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=23760ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23760ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23760ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=23760ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=23760ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23760ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=23760ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=23760ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23760ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23760ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23760ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23760ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23760ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23780ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23780ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23780ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23780ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23780ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23780ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23780ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23780ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23780ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=23780ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23780ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=23780ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=23780ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=23780ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=23780ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23780ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=23780ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=23780ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23780ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=23780ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23780ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23780ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23780ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23780ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23800ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23800ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23800ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23800ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23800ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23800ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23800ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23800ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23800ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=23800ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23800ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=23800ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=23800ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=23800ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23800ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23800ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=23800ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=23800ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23800ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=23800ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=23800ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23800ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23800ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23800ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23800ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23800ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23820ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23820ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23820ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23820ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23820ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23820ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23820ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23820ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23820ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=23820ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23820ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=23820ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=23820ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=23820ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=23820ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23820ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=23820ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=23820ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23820ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=23820ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23820ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23820ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23820ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23820ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23840ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23840ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23840ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23840ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23840ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23840ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23840ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23840ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23840ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=23840ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23840ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=23840ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=23840ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=23840ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23840ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23840ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=23840ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=23840ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23840ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=23840ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=23840ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23840ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23840ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23840ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23840ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23840ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23860ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23860ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23860ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23860ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23860ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23860ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23860ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23860ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23860ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=23860ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23860ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=23860ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=23860ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=23860ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=23860ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23860ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=23860ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=23860ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23860ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=23860ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23860ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23860ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23860ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23860ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23880ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23880ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23880ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23880ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23880ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23880ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23880ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23880ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23880ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=23880ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23880ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=23880ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=23880ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=23880ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23880ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23880ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=23880ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=23880ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23880ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=23880ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=23880ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23880ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23880ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23880ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23880ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23880ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23900ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23900ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23900ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23900ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23900ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23900ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23900ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23900ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23900ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=23900ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23900ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=23900ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=23900ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=23900ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=23900ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23900ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=23900ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=23900ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23900ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=23900ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23900ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23900ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23900ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23900ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23920ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23920ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23920ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23920ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23920ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23920ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23920ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23920ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23920ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=23920ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23920ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=23920ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=23920ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=23920ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23920ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23920ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=23920ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=23920ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23920ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=23920ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=23920ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23920ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23920ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23920ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23920ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23920ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23940ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23940ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23940ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23940ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23940ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23940ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23940ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23940ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23940ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23940ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=23940ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23940ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=23940ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=23940ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=23940ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=23940ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23940ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=23940ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23940ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=23940ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=23940ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23940ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23940ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23940ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23940ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23940ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23960ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23960ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23960ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23960ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23960ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23960ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23960ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23960ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23960ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=23960ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23960ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=23960ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=23960ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=23960ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23960ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23960ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=23960ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=23960ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23960ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=23960ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=23960ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23960ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23960ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23960ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23960ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=23960ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=23980ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=23980ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=23980ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=23980ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=23980ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23980ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=23980ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23980ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23980ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=23980ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=23980ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=23980ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=23980ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=23980ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=23980ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=23980ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23980ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=23980ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=23980ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=23980ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=23980ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=23980ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=23980ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=23980ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=23980ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=23980ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24000ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24000ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24000ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24000ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24000ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24000ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24000ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24000ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24000ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=24000ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24000ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=24000ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=24000ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=24000ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24000ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24000ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=24000ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=24000ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24000ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=24000ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=24000ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24000ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24000ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24000ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24000ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24000ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24020ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24020ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24020ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24020ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24020ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24020ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24020ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24020ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24020ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24020ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=24020ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24020ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=24020ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=24020ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=24020ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=24020ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24020ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=24020ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=24020ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24020ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=24020ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24020ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24020ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24020ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24020ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24020ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24040ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24040ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24040ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24040ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24040ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24040ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24040ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24040ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24040ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=24040ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24040ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=24040ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=24040ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=24040ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24040ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24040ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=24040ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=24040ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24040ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=24040ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=24040ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24040ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24040ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24040ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24040ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24040ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24060ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24060ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24060ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24060ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24060ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24060ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24060ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24060ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24060ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24060ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=24060ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24060ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=24060ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=24060ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=24060ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=24060ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24060ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=24060ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=24060ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24060ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=24060ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24060ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24060ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24060ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24060ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24060ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24080ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24080ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24080ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24080ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24080ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24080ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24080ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24080ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24080ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=24080ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24080ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=24080ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=24080ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=24080ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24080ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24080ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=24080ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=24080ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24080ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=24080ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=24080ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24080ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24080ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24080ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24080ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24080ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24100ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24100ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24100ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24100ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24100ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24100ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24100ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24100ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24100ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=24100ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24100ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=24100ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=24100ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=24100ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=24100ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24100ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=24100ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=24100ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24100ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=24100ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24100ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24100ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24100ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24100ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24120ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24120ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24120ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24120ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24120ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24120ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24120ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24120ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24120ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=24120ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24120ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=24120ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=24120ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=24120ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24120ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24120ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=24120ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=24120ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24120ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=24120ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=24120ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24120ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24120ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24120ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24120ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24120ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24140ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24140ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24140ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24140ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24140ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24140ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24140ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24140ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24140ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24140ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=24140ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24140ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=24140ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=24140ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=24140ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=24140ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24140ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=24140ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=24140ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24140ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=24140ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24140ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24140ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24140ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24140ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24140ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24160ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24160ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24160ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24160ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24160ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24160ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24160ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24160ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24160ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24160ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=24160ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24160ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=24160ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=24160ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=24160ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24160ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24160ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=24160ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=24160ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24160ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=24160ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=24160ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24160ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24160ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24160ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24160ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24160ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24160ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24180ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24180ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24180ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24180ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24180ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24180ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24180ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24180ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24180ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=24180ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24180ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=24180ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=24180ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=24180ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=24180ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24180ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=24180ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=24180ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24180ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=24180ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24180ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24180ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24180ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24180ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24200ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24200ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24200ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24200ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24200ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24200ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24200ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24200ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24200ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24200ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=24200ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24200ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=24200ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=24200ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=24200ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24200ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24200ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=24200ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=24200ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24200ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=24200ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=24200ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24200ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24200ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24200ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24200ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24200ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24200ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24220ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24220ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24220ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24220ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24220ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24220ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24220ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24220ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24220ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=24220ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24220ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=24220ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=24220ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=24220ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=24220ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24220ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=24220ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=24220ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24220ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=24220ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24220ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24220ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24220ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24220ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24240ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24240ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24240ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24240ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24240ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24240ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24240ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24240ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24240ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=24240ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24240ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=24240ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=24240ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=24240ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24240ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24240ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=24240ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=24240ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24240ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=24240ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=24240ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24240ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24240ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24240ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24240ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24240ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24260ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24260ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24260ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24260ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24260ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24260ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24260ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24260ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24260ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24260ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=24260ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24260ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=24260ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=24260ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=24260ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=24260ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24260ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=24260ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=24260ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24260ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=24260ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24260ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24260ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24260ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24260ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24260ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24280ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24280ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24280ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24280ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24280ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24280ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24280ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24280ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24280ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=24280ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24280ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=24280ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=24280ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=24280ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24280ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24280ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=24280ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=24280ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24280ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=24280ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=24280ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24280ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24280ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24280ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24280ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24280ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24300ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24300ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24300ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24300ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24300ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24300ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24300ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24300ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24300ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=24300ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24300ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=24300ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=24300ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=24300ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=24300ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24300ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=24300ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=24300ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24300ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=24300ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24300ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24300ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24300ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24300ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24320ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24320ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24320ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24320ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24320ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24320ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24320ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24320ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24320ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=24320ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24320ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=24320ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=24320ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=24320ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24320ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24320ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=24320ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=24320ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24320ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=24320ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=24320ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24320ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24320ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24320ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24320ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24320ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24340ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24340ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24340ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24340ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24340ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24340ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24340ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24340ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24340ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24340ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=24340ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24340ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=24340ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=24340ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=24340ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=24340ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24340ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=24340ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=24340ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24340ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=24340ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24340ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24340ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24340ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24340ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24340ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24360ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24360ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24360ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24360ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24360ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24360ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24360ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24360ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24360ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=24360ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24360ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=24360ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=24360ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=24360ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24360ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24360ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=24360ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=24360ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24360ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=24360ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=24360ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24360ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24360ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24360ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24360ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24360ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24380ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24380ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24380ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24380ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24380ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24380ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24380ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24380ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24380ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24380ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=24380ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24380ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=24380ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=24380ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=24380ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=24380ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24380ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=24380ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=24380ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24380ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=24380ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24380ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24380ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24380ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24380ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24380ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24400ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24400ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24400ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24400ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24400ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24400ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24400ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24400ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24400ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=24400ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24400ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=24400ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=24400ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=24400ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24400ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24400ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=24400ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=24400ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24400ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=24400ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=24400ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24400ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24400ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24400ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24400ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24400ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24420ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24420ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24420ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24420ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24420ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24420ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24420ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24420ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24420ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=24420ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24420ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=24420ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=24420ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=24420ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=24420ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24420ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=24420ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=24420ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24420ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=24420ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=24420ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24420ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24420ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24420ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24420ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=24420ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24440ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24440ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24440ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24440ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24440ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24440ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24440ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24440ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24440ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=24440ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24440ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=24440ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=24440ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=24440ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24440ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24440ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=24440ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=24440ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24440ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=24440ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=24440ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24440ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24440ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24440ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24440ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24440ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24460ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24460ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24460ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24460ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24460ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24460ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24460ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24460ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24460ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=24460ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24460ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=24460ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=24460ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=24460ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=24460ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24460ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=24460ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=24460ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24460ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=24460ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24460ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24460ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24460ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24460ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24480ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24480ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24480ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24480ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24480ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24480ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24480ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24480ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24480ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=24480ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24480ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=24480ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=24480ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=24480ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24480ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24480ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=24480ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=24480ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24480ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=24480ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=24480ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24480ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24480ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24480ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24480ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24480ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24500ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24500ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24500ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24500ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24500ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24500ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24500ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24500ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24500ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24500ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=24500ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24500ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=24500ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=24500ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=24500ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=24500ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24500ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=24500ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=24500ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24500ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=24500ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24500ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24500ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24500ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24500ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24500ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24520ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24520ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24520ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24520ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24520ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24520ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24520ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24520ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24520ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=24520ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24520ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=24520ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=24520ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=24520ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24520ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24520ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=24520ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=24520ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24520ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=24520ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=24520ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24520ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24520ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24520ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24520ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24520ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24540ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24540ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24540ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24540ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24540ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24540ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24540ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24540ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24540ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=24540ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24540ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=24540ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=24540ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=24540ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=24540ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24540ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=24540ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=24540ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24540ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=24540ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24540ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24540ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24540ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24540ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24560ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24560ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24560ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24560ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24560ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24560ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24560ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24560ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24560ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=24560ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24560ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=24560ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=24560ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=24560ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24560ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24560ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=24560ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=24560ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24560ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=24560ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=24560ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24560ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24560ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24560ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24560ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24560ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24580ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24580ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24580ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24580ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24580ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24580ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24580ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24580ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24580ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=24580ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24580ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=24580ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=24580ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=24580ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=24580ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24580ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=24580ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=24580ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24580ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=24580ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24580ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24580ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24580ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24580ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24600ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24600ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24600ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24600ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24600ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24600ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24600ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24600ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24600ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=24600ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24600ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=24600ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=24600ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=24600ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24600ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24600ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=24600ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=24600ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24600ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=24600ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=24600ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24600ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24600ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24600ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24600ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24600ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24620ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24620ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24620ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24620ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24620ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24620ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24620ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24620ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24620ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=24620ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=24620ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24620ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=24620ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=24620ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24620ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=24620ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24620ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=24620ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=24620ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24620ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=24620ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24620ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24620ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24620ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24620ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24620ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24640ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24640ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24640ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24640ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24640ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24640ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24640ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24640ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24640ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=24640ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24640ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=24640ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=24640ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=24640ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24640ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24640ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=24640ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=24640ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24640ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=24640ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=24640ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24640ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24640ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24640ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24640ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24640ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24660ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24660ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24660ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24660ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24660ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24660ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24660ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24660ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24660ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=24660ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24660ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=24660ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=24660ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=24660ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=24660ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24660ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=24660ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=24660ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24660ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=24660ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24660ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24660ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24660ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24660ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24680ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24680ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24680ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24680ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24680ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24680ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24680ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24680ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24680ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=24680ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24680ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=24680ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=24680ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=24680ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24680ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24680ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=24680ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=24680ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24680ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=24680ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=24680ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24680ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24680ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24680ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24680ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24680ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24700ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24700ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24700ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24700ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24700ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24700ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24700ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24700ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24700ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=24700ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24700ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=24700ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=24700ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=24700ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=24700ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24700ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=24700ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=24700ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24700ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=24700ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24700ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24700ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24700ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24700ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24720ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24720ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24720ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24720ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24720ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24720ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24720ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24720ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24720ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=24720ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24720ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=24720ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=24720ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=24720ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24720ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24720ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=24720ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=24720ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24720ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=24720ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=24720ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24720ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24720ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24720ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24720ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24720ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24740ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24740ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24740ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24740ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24740ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24740ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24740ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24740ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24740ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=24740ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24740ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=24740ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=24740ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=24740ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=24740ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24740ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=24740ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=24740ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24740ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=24740ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24740ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24740ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24740ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24740ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24760ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24760ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24760ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24760ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24760ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24760ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24760ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24760ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24760ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=24760ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24760ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=24760ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=24760ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=24760ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24760ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24760ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=24760ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=24760ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24760ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=24760ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=24760ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24760ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24760ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24760ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24760ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24760ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24780ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24780ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24780ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24780ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24780ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24780ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24780ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24780ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24780ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=24780ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24780ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=24780ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=24780ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=24780ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=24780ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24780ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=24780ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=24780ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24780ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=24780ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24780ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24780ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24780ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24780ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24800ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24800ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24800ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24800ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24800ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24800ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24800ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24800ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24800ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=24800ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24800ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=24800ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=24800ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=24800ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24800ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24800ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=24800ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=24800ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24800ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=24800ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=24800ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24800ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24800ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24800ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24800ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24800ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24820ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24820ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24820ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24820ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24820ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24820ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24820ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24820ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24820ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=24820ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24820ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=24820ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=24820ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=24820ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=24820ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24820ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=24820ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24820ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=24820ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=24820ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24820ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24820ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24820ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24820ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24840ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24840ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24840ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24840ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24840ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24840ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24840ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24840ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24840ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=24840ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24840ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=24840ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=24840ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=24840ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24840ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24840ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=24840ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=24840ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24840ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=24840ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=24840ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24840ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24840ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24840ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24840ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24840ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24860ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24860ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24860ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24860ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24860ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24860ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24860ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24860ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24860ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=24860ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24860ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=24860ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=24860ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=24860ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=24860ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24860ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=24860ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=24860ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24860ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=24860ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24860ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24860ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24860ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24860ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24880ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24880ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24880ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24880ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24880ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24880ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24880ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24880ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24880ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=24880ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24880ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=24880ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=24880ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=24880ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24880ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24880ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=24880ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=24880ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24880ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=24880ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=24880ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24880ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24880ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24880ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24880ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24880ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24900ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24900ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24900ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24900ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24900ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24900ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24900ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24900ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24900ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=24900ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24900ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=24900ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=24900ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=24900ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=24900ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24900ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=24900ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=24900ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24900ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=24900ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24900ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24900ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24900ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24900ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24920ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24920ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24920ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24920ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24920ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24920ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24920ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24920ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24920ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=24920ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24920ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=24920ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=24920ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=24920ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24920ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24920ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=24920ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=24920ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24920ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=24920ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=24920ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24920ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24920ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24920ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24920ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24920ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24940ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24940ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24940ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24940ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24940ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24940ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24940ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24940ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24940ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24940ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=24940ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24940ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=24940ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=24940ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=24940ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=24940ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24940ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=24940ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=24940ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24940ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=24940ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24940ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24940ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24940ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24940ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24940ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24960ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24960ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24960ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24960ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24960ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24960ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24960ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24960ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24960ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=24960ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24960ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=24960ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=24960ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=24960ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24960ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24960ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=24960ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=24960ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24960ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=24960ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=24960ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24960ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24960ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24960ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24960ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=24960ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=24980ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=24980ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=24980ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=24980ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=24980ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24980ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=24980ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24980ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24980ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=24980ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=24980ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=24980ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=24980ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=24980ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=24980ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=24980ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24980ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=24980ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=24980ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=24980ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=24980ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=24980ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=24980ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=24980ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=24980ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=24980ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25000ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25000ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25000ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25000ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25000ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25000ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25000ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25000ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25000ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=25000ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25000ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=25000ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=25000ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=25000ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25000ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25000ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=25000ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=25000ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25000ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=25000ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=25000ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25000ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25000ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25000ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25000ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25000ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25020ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25020ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25020ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25020ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25020ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25020ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25020ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25020ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25020ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25020ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=25020ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25020ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=25020ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=25020ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=25020ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=25020ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25020ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=25020ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=25020ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25020ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=25020ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25020ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25020ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25020ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25020ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25020ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25040ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25040ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25040ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25040ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25040ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25040ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25040ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25040ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25040ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=25040ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=25040ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25040ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=25040ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=25040ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25040ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=25040ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25040ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=25040ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25040ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=25040ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=25040ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25040ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25040ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25040ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25040ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25040ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25060ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25060ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25060ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25060ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25060ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25060ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25060ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25060ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25060ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25060ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=25060ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25060ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=25060ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=25060ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=25060ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=25060ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25060ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=25060ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=25060ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25060ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=25060ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25060ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25060ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25060ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25060ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25060ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25080ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25080ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25080ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25080ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25080ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25080ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25080ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25080ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25080ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=25080ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25080ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=25080ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=25080ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=25080ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25080ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25080ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=25080ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=25080ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25080ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=25080ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=25080ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25080ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25080ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25080ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25080ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25080ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25100ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25100ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25100ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25100ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25100ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25100ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25100ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25100ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25100ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=25100ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25100ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=25100ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=25100ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=25100ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=25100ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25100ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=25100ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=25100ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25100ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=25100ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25100ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25100ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25100ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25100ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25120ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25120ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25120ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25120ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25120ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25120ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25120ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25120ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25120ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=25120ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25120ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=25120ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=25120ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=25120ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25120ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25120ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=25120ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=25120ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25120ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=25120ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=25120ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25120ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25120ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25120ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25120ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25120ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25140ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25140ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25140ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25140ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25140ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25140ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25140ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25140ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25140ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25140ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=25140ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25140ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=25140ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=25140ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=25140ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=25140ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25140ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=25140ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=25140ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25140ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=25140ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25140ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25140ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25140ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25140ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25140ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25160ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25160ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25160ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25160ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25160ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25160ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25160ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25160ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25160ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25160ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=25160ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25160ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=25160ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=25160ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=25160ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25160ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25160ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=25160ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=25160ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25160ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=25160ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=25160ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25160ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25160ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25160ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25160ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25160ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25160ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25180ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25180ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25180ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25180ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25180ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25180ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25180ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25180ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25180ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=25180ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25180ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=25180ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=25180ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=25180ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=25180ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25180ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=25180ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=25180ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25180ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=25180ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25180ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25180ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25180ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25180ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25200ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25200ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25200ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25200ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25200ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25200ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25200ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25200ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25200ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25200ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=25200ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25200ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=25200ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=25200ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=25200ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25200ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25200ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=25200ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=25200ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25200ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=25200ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=25200ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25200ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25200ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25200ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25200ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25200ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25200ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25220ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25220ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25220ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25220ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25220ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25220ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25220ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25220ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25220ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=25220ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25220ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=25220ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=25220ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=25220ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=25220ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25220ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=25220ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=25220ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25220ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=25220ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25220ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25220ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25220ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25220ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25240ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25240ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25240ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25240ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25240ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25240ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25240ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25240ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25240ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=25240ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25240ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=25240ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=25240ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=25240ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25240ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25240ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=25240ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=25240ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25240ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=25240ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=25240ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25240ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25240ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25240ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25240ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25240ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25260ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25260ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25260ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25260ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25260ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25260ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25260ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25260ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25260ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25260ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=25260ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25260ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=25260ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=25260ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=25260ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=25260ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25260ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=25260ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=25260ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25260ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=25260ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25260ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25260ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25260ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25260ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25260ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25280ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25280ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25280ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25280ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25280ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25280ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25280ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25280ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25280ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=25280ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25280ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=25280ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=25280ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=25280ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25280ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25280ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=25280ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=25280ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25280ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=25280ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=25280ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25280ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25280ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25280ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25280ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25280ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25300ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25300ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25300ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25300ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25300ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25300ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25300ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25300ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25300ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=25300ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25300ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=25300ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=25300ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=25300ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=25300ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25300ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=25300ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=25300ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25300ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=25300ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25300ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25300ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25300ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25300ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25320ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25320ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25320ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25320ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25320ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25320ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25320ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25320ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25320ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=25320ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25320ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=25320ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=25320ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=25320ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25320ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25320ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=25320ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=25320ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25320ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=25320ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=25320ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25320ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25320ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25320ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25320ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25320ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25340ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25340ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25340ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25340ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25340ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25340ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25340ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25340ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25340ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25340ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=25340ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25340ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=25340ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=25340ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=25340ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=25340ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25340ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=25340ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=25340ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25340ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=25340ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25340ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25340ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25340ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25340ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25340ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25360ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25360ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25360ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25360ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25360ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25360ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25360ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25360ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25360ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=25360ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25360ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=25360ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=25360ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=25360ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25360ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25360ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=25360ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=25360ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25360ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=25360ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=25360ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25360ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25360ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25360ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25360ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25360ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25380ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25380ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25380ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25380ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25380ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25380ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25380ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25380ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25380ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25380ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=25380ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25380ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=25380ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=25380ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=25380ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=25380ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25380ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=25380ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=25380ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25380ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=25380ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25380ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25380ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25380ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25380ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25380ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25400ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25400ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25400ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25400ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25400ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25400ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25400ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25400ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25400ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=25400ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25400ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=25400ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=25400ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=25400ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25400ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25400ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=25400ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=25400ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25400ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=25400ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=25400ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25400ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25400ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25400ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25400ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25400ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25420ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25420ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25420ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25420ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25420ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25420ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25420ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25420ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25420ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=25420ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25420ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=25420ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=25420ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=25420ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=25420ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25420ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=25420ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=25420ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25420ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=25420ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25420ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25420ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25420ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25420ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25440ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25440ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25440ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25440ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25440ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25440ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25440ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25440ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25440ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=25440ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25440ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=25440ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=25440ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=25440ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25440ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25440ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=25440ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=25440ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25440ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=25440ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=25440ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25440ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25440ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25440ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25440ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25440ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25460ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25460ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25460ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25460ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25460ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25460ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25460ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25460ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25460ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=25460ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25460ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=25460ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=25460ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=25460ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=25460ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25460ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=25460ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=25460ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25460ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=25460ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25460ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25460ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25460ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25460ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25480ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25480ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25480ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25480ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25480ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25480ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25480ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25480ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25480ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=25480ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25480ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=25480ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=25480ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=25480ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25480ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25480ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=25480ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=25480ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25480ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=25480ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=25480ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25480ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25480ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25480ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25480ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25480ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25500ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25500ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25500ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25500ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25500ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25500ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25500ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25500ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25500ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25500ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=25500ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25500ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=25500ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=25500ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=25500ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=25500ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25500ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=25500ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=25500ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25500ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=25500ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=25500ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25500ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25500ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25500ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25500ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=25500ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25500ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25520ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25520ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25520ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25520ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25520ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25520ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25520ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25520ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25520ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=25520ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25520ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=25520ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=25520ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=25520ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25520ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25520ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=25520ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=25520ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25520ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=25520ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=25520ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25520ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25520ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25520ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25520ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25520ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25540ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25540ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25540ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25540ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25540ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25540ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25540ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25540ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25540ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=25540ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25540ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=25540ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=25540ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=25540ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=25540ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25540ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=25540ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=25540ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25540ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=25540ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25540ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25540ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25540ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25540ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25560ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25560ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25560ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25560ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25560ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25560ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25560ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25560ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25560ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=25560ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25560ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=25560ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=25560ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=25560ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25560ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25560ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=25560ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=25560ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25560ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=25560ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=25560ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25560ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25560ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25560ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25560ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25560ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25580ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25580ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25580ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25580ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25580ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25580ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25580ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25580ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25580ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=25580ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25580ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=25580ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=25580ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=25580ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=25580ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25580ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=25580ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=25580ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25580ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=25580ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25580ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25580ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25580ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25580ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25600ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25600ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25600ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25600ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25600ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25600ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25600ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25600ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25600ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=25600ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25600ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=25600ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=25600ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=25600ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25600ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25600ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=25600ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=25600ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25600ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=25600ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=25600ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25600ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25600ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25600ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25600ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25600ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25620ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25620ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25620ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25620ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25620ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25620ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25620ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25620ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25620ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=25620ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25620ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=25620ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=25620ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=25620ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=25620ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25620ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=25620ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=25620ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25620ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=25620ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25620ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25620ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25620ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25620ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25640ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25640ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25640ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25640ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25640ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25640ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25640ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25640ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25640ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=25640ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25640ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=25640ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=25640ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=25640ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25640ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25640ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=25640ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=25640ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25640ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=25640ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=25640ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25640ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25640ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25640ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25640ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25640ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25660ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25660ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25660ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25660ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25660ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25660ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25660ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25660ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25660ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=25660ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25660ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=25660ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=25660ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=25660ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=25660ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25660ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=25660ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=25660ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25660ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=25660ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25660ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25660ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25660ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25660ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25680ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25680ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25680ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25680ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25680ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25680ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25680ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25680ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25680ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=25680ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25680ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=25680ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=25680ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=25680ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25680ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25680ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=25680ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=25680ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25680ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=25680ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=25680ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25680ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25680ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25680ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25680ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25680ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25700ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25700ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25700ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25700ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25700ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25700ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25700ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25700ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25700ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=25700ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=25700ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25700ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=25700ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=25700ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25700ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=25700ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25700ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=25700ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=25700ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25700ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=25700ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25700ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25700ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25700ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25700ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25700ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25720ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25720ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25720ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25720ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25720ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25720ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25720ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25720ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25720ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=25720ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25720ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=25720ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=25720ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=25720ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25720ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25720ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=25720ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=25720ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25720ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=25720ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=25720ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25720ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25720ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25720ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25720ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25720ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25740ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25740ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25740ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25740ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25740ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25740ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25740ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25740ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25740ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=25740ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25740ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=25740ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=25740ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=25740ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=25740ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25740ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=25740ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=25740ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25740ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=25740ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25740ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25740ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25740ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25740ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25760ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25760ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25760ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25760ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25760ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25760ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25760ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25760ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25760ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=25760ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=25760ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25760ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=25760ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=25760ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=25760ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25760ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25760ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=25760ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25760ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=25760ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=25760ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25760ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25760ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25760ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25760ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=25760ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25780ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25780ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25780ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25780ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25780ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25780ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25780ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25780ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25780ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=25780ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25780ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=25780ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=25780ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=25780ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=25780ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25780ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=25780ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=25780ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25780ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=25780ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25780ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25780ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25780ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25780ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25800ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25800ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25800ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25800ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25800ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25800ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25800ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25800ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25800ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=25800ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25800ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=25800ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=25800ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=25800ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25800ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25800ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=25800ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=25800ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25800ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=25800ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=25800ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25800ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25800ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25800ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25800ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25800ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25820ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25820ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25820ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25820ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25820ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25820ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25820ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25820ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25820ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=25820ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25820ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=25820ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=25820ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=25820ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=25820ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25820ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=25820ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=25820ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25820ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=25820ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25820ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25820ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25820ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25820ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25840ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25840ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25840ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25840ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25840ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25840ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25840ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25840ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25840ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=25840ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25840ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=25840ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=25840ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=25840ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25840ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25840ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=25840ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=25840ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25840ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=25840ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=25840ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25840ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25840ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25840ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25840ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25840ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25860ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25860ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25860ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25860ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25860ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25860ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25860ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25860ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25860ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=25860ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25860ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=25860ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=25860ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=25860ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=25860ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25860ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=25860ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=25860ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25860ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=25860ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25860ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25860ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25860ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25860ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25880ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25880ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25880ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25880ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25880ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25880ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25880ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25880ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25880ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=25880ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25880ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=25880ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=25880ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=25880ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25880ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25880ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=25880ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=25880ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25880ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=25880ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=25880ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25880ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25880ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25880ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25880ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25880ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25900ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25900ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25900ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25900ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25900ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25900ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25900ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25900ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25900ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=25900ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25900ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=25900ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=25900ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=25900ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=25900ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25900ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=25900ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=25900ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25900ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=25900ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25900ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25900ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25900ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25900ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25920ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25920ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25920ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25920ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25920ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25920ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25920ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25920ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25920ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=25920ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25920ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=25920ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=25920ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=25920ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25920ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25920ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=25920ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=25920ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25920ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=25920ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=25920ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25920ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25920ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25920ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25920ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25920ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25940ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25940ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25940ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25940ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25940ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25940ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25940ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25940ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25940ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25940ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=25940ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25940ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=25940ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=25940ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=25940ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=25940ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25940ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=25940ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=25940ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25940ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=25940ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25940ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25940ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25940ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25940ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25940ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25960ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25960ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25960ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25960ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25960ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25960ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25960ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25960ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25960ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=25960ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25960ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=25960ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=25960ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=25960ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25960ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25960ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=25960ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=25960ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25960ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=25960ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=25960ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25960ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25960ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25960ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25960ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=25960ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=25980ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=25980ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=25980ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=25980ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=25980ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25980ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=25980ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25980ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25980ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=25980ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=25980ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=25980ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=25980ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=25980ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=25980ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=25980ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25980ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=25980ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=25980ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=25980ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=25980ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=25980ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=25980ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=25980ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=25980ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=25980ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26000ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26000ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26000ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26000ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26000ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26000ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26000ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26000ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26000ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=26000ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26000ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=26000ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=26000ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=26000ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26000ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26000ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=26000ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=26000ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26000ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=26000ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=26000ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26000ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26000ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26000ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26000ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26000ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26020ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26020ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26020ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26020ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26020ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26020ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26020ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26020ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26020ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26020ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=26020ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26020ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=26020ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=26020ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=26020ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=26020ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26020ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=26020ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=26020ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26020ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=26020ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26020ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26020ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26020ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26020ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26020ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26040ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26040ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26040ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26040ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26040ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26040ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26040ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26040ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26040ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=26040ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26040ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=26040ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=26040ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=26040ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26040ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26040ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=26040ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=26040ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26040ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=26040ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=26040ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26040ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26040ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26040ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26040ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26040ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26060ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26060ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26060ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26060ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26060ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26060ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26060ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26060ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26060ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26060ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=26060ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26060ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=26060ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=26060ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=26060ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=26060ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26060ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=26060ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=26060ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26060ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=26060ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26060ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26060ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26060ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26060ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26060ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26080ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26080ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26080ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26080ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26080ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26080ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26080ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26080ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26080ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=26080ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26080ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=26080ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=26080ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=26080ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26080ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26080ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=26080ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=26080ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26080ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=26080ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=26080ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26080ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26080ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26080ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26080ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26080ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26100ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26100ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26100ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26100ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26100ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26100ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26100ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26100ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26100ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=26100ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26100ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=26100ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=26100ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=26100ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=26100ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26100ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=26100ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=26100ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26100ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=26100ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26100ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26100ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26100ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26100ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26120ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26120ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26120ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26120ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26120ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26120ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26120ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26120ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26120ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=26120ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26120ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=26120ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=26120ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=26120ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26120ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26120ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=26120ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=26120ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26120ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=26120ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=26120ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26120ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26120ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26120ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26120ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26120ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26140ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26140ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26140ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26140ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26140ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26140ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26140ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26140ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26140ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26140ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=26140ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26140ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=26140ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=26140ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=26140ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=26140ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26140ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=26140ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=26140ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26140ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=26140ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26140ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26140ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26140ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26140ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26140ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26160ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26160ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26160ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26160ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26160ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26160ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26160ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26160ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26160ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26160ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=26160ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26160ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=26160ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=26160ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=26160ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26160ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26160ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=26160ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=26160ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26160ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=26160ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=26160ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26160ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26160ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26160ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26160ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26160ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26160ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26180ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26180ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26180ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26180ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26180ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26180ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26180ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26180ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26180ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=26180ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26180ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=26180ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=26180ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=26180ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=26180ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26180ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=26180ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=26180ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26180ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=26180ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26180ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26180ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26180ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26180ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26200ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26200ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26200ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26200ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26200ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26200ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26200ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26200ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26200ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26200ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=26200ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26200ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=26200ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=26200ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=26200ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26200ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26200ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=26200ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=26200ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26200ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=26200ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=26200ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26200ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26200ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26200ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26200ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26200ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26200ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26220ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26220ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26220ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26220ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26220ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26220ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26220ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26220ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26220ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=26220ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26220ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=26220ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=26220ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=26220ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=26220ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26220ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=26220ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=26220ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26220ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=26220ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26220ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26220ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26220ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26220ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26240ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26240ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26240ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26240ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26240ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26240ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26240ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26240ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26240ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=26240ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26240ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=26240ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=26240ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=26240ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26240ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26240ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=26240ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=26240ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26240ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=26240ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=26240ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26240ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26240ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26240ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26240ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26240ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26260ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26260ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26260ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26260ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26260ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26260ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26260ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26260ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26260ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26260ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=26260ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26260ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=26260ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=26260ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=26260ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=26260ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26260ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=26260ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=26260ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26260ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=26260ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26260ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26260ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26260ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26260ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26260ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26280ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26280ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26280ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26280ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26280ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26280ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26280ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26280ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26280ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=26280ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26280ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=26280ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=26280ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=26280ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26280ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26280ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=26280ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=26280ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26280ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=26280ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=26280ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26280ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26280ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26280ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26280ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26280ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26300ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26300ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26300ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26300ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26300ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26300ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26300ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26300ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26300ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=26300ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26300ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=26300ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=26300ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=26300ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=26300ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26300ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=26300ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=26300ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26300ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=26300ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26300ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26300ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26300ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26300ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26320ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26320ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26320ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26320ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26320ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26320ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26320ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26320ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26320ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=26320ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26320ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=26320ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=26320ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=26320ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26320ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26320ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=26320ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=26320ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26320ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=26320ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=26320ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26320ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26320ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26320ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26320ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26320ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26340ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26340ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26340ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26340ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26340ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26340ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26340ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26340ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26340ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26340ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=26340ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26340ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=26340ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=26340ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=26340ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=26340ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26340ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=26340ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=26340ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26340ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=26340ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26340ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26340ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26340ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26340ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26340ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26360ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26360ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26360ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26360ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26360ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26360ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26360ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26360ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26360ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=26360ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26360ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=26360ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=26360ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=26360ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26360ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26360ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=26360ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=26360ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26360ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=26360ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=26360ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26360ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26360ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26360ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26360ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26360ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26380ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26380ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26380ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26380ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26380ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26380ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26380ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26380ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26380ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26380ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=26380ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26380ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=26380ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=26380ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=26380ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=26380ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26380ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=26380ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=26380ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26380ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=26380ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26380ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26380ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26380ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26380ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26380ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26400ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26400ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26400ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26400ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26400ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26400ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26400ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26400ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26400ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=26400ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26400ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=26400ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=26400ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=26400ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26400ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26400ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=26400ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=26400ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26400ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=26400ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=26400ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26400ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26400ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26400ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26400ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26400ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26420ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26420ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26420ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26420ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26420ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26420ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26420ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26420ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26420ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=26420ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26420ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=26420ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=26420ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=26420ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=26420ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26420ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=26420ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=26420ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26420ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=26420ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26420ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26420ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26420ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26420ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26440ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26440ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26440ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26440ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26440ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26440ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26440ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26440ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26440ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=26440ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26440ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=26440ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=26440ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=26440ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26440ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26440ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=26440ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=26440ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26440ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=26440ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=26440ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26440ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26440ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26440ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26440ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26440ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26460ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26460ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26460ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26460ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26460ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26460ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26460ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26460ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26460ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=26460ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26460ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=26460ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=26460ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=26460ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=26460ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26460ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=26460ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=26460ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26460ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=26460ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26460ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26460ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26460ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26460ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26480ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26480ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26480ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26480ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26480ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26480ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26480ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26480ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26480ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=26480ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26480ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=26480ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=26480ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=26480ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26480ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26480ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=26480ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=26480ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26480ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=26480ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=26480ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26480ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26480ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26480ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26480ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26480ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26500ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26500ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26500ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26500ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26500ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26500ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26500ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26500ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26500ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26500ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=26500ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26500ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=26500ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=26500ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=26500ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=26500ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26500ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=26500ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=26500ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26500ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=26500ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26500ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26500ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26500ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26500ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26500ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26520ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26520ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26520ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26520ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26520ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26520ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26520ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26520ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26520ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=26520ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26520ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=26520ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=26520ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=26520ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26520ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26520ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=26520ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=26520ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26520ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=26520ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=26520ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26520ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26520ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26520ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26520ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26520ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26540ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26540ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26540ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26540ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26540ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26540ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26540ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26540ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26540ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=26540ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26540ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=26540ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=26540ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=26540ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=26540ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26540ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=26540ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=26540ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26540ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=26540ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26540ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26540ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26540ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26540ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26560ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26560ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26560ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26560ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26560ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26560ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26560ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26560ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26560ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=26560ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26560ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=26560ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=26560ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=26560ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26560ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26560ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=26560ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=26560ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26560ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=26560ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=26560ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26560ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26560ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26560ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26560ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26560ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26580ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26580ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26580ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26580ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26580ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26580ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26580ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26580ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26580ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=26580ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26580ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=26580ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=26580ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=26580ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=26580ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26580ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=26580ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=26580ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26580ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=26580ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26580ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26580ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26580ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26580ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26600ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26600ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26600ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26600ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26600ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26600ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26600ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26600ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26600ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=26600ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26600ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=26600ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=26600ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=26600ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26600ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26600ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=26600ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=26600ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26600ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=26600ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=26600ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26600ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26600ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26600ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26600ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26600ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26620ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26620ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26620ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26620ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26620ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26620ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26620ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26620ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26620ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=26620ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26620ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=26620ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=26620ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=26620ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=26620ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26620ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=26620ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=26620ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26620ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=26620ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26620ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26620ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26620ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26620ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26640ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26640ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26640ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26640ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26640ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26640ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26640ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26640ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26640ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=26640ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=26640ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26640ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=26640ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=26640ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26640ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=26640ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26640ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=26640ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26640ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=26640ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=26640ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26640ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26640ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26640ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26640ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26640ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26660ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26660ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26660ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26660ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26660ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26660ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26660ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26660ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26660ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=26660ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26660ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=26660ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=26660ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=26660ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=26660ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26660ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=26660ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=26660ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26660ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=26660ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26660ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26660ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26660ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26660ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26680ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26680ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26680ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26680ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26680ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26680ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26680ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26680ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26680ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=26680ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26680ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=26680ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=26680ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=26680ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26680ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26680ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=26680ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=26680ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26680ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=26680ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=26680ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26680ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26680ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26680ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26680ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26680ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26700ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26700ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26700ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26700ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26700ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26700ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26700ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26700ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26700ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=26700ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26700ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=26700ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=26700ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=26700ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=26700ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26700ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=26700ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=26700ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26700ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=26700ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26700ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26700ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26700ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26700ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26720ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26720ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26720ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26720ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26720ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26720ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26720ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26720ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26720ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=26720ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26720ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=26720ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=26720ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=26720ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26720ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26720ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=26720ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=26720ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26720ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=26720ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=26720ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26720ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26720ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26720ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26720ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26720ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26740ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26740ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26740ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26740ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26740ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26740ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26740ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26740ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26740ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=26740ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26740ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=26740ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=26740ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=26740ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=26740ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26740ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=26740ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=26740ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26740ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=26740ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26740ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26740ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26740ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26740ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26760ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26760ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26760ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26760ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26760ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26760ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26760ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26760ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26760ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=26760ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=26760ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26760ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=26760ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=26760ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=26760ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26760ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26760ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=26760ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=26760ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26760ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26760ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=26760ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26760ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26760ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26760ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26760ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26780ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26780ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26780ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26780ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26780ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26780ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26780ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26780ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26780ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=26780ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26780ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=26780ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=26780ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=26780ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=26780ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26780ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=26780ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=26780ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26780ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=26780ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26780ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26780ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26780ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26780ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26800ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26800ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26800ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26800ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26800ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26800ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26800ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26800ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26800ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=26800ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26800ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=26800ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=26800ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=26800ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26800ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26800ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=26800ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=26800ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26800ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=26800ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=26800ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26800ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26800ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26800ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26800ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26800ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26820ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26820ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26820ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26820ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26820ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26820ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26820ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26820ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26820ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=26820ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26820ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=26820ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=26820ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=26820ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=26820ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26820ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=26820ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=26820ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26820ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=26820ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26820ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26820ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26820ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26820ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26840ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26840ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26840ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26840ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26840ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26840ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26840ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26840ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26840ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=26840ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26840ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=26840ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=26840ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=26840ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26840ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26840ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=26840ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=26840ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26840ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=26840ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=26840ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26840ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26840ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26840ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26840ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26840ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26860ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26860ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26860ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26860ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26860ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26860ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26860ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26860ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26860ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=26860ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26860ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=26860ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=26860ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=26860ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=26860ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26860ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=26860ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=26860ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26860ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=26860ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26860ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26860ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26860ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26860ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26880ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26880ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26880ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26880ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26880ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26880ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26880ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26880ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26880ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=26880ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26880ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=26880ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=26880ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=26880ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26880ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26880ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=26880ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=26880ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26880ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=26880ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=26880ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26880ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26880ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26880ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26880ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26880ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26900ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26900ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26900ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26900ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26900ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26900ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26900ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26900ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26900ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=26900ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26900ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=26900ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=26900ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=26900ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=26900ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26900ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=26900ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=26900ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26900ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=26900ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26900ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26900ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26900ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26900ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26920ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26920ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26920ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26920ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26920ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26920ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26920ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26920ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26920ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=26920ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26920ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=26920ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=26920ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=26920ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26920ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26920ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=26920ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=26920ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26920ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=26920ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=26920ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26920ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26920ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26920ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26920ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26920ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26940ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26940ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26940ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26940ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26940ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26940ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26940ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26940ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26940ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26940ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=26940ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26940ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=26940ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=26940ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=26940ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=26940ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26940ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=26940ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=26940ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26940ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=26940ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26940ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26940ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26940ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26940ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26940ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26960ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26960ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26960ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26960ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26960ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26960ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26960ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26960ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26960ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=26960ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26960ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=26960ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=26960ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=26960ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26960ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26960ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=26960ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=26960ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26960ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=26960ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=26960ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26960ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26960ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26960ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26960ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=26960ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=26980ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=26980ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=26980ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=26980ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=26980ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26980ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=26980ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26980ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26980ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=26980ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=26980ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=26980ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=26980ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=26980ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=26980ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=26980ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26980ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=26980ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=26980ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=26980ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=26980ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=26980ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=26980ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=26980ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=26980ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=26980ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27000ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27000ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27000ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27000ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27000ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27000ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27000ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27000ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27000ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=27000ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27000ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=27000ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=27000ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=27000ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27000ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27000ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=27000ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=27000ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27000ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=27000ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=27000ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27000ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27000ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27000ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27000ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27000ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27020ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27020ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27020ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27020ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27020ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27020ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27020ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27020ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27020ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27020ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=27020ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27020ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=27020ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=27020ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=27020ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=27020ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27020ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=27020ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=27020ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27020ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=27020ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27020ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27020ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27020ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27020ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27020ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27040ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27040ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27040ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27040ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27040ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27040ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27040ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27040ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27040ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=27040ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27040ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=27040ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=27040ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=27040ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27040ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27040ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=27040ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=27040ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27040ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=27040ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=27040ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27040ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27040ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27040ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27040ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27040ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27060ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27060ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27060ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27060ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27060ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27060ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27060ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27060ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27060ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27060ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=27060ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27060ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=27060ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=27060ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=27060ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=27060ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27060ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=27060ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=27060ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27060ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=27060ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27060ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27060ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27060ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27060ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27060ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27080ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27080ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27080ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27080ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27080ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27080ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27080ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27080ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27080ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=27080ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27080ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=27080ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=27080ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=27080ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27080ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27080ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=27080ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=27080ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27080ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=27080ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=27080ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27080ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27080ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27080ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27080ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27080ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27100ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27100ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27100ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27100ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27100ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27100ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27100ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27100ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27100ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=27100ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27100ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=27100ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=27100ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=27100ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=27100ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27100ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=27100ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=27100ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27100ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=27100ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27100ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27100ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27100ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27100ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27120ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27120ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27120ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27120ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27120ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27120ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27120ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27120ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27120ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=27120ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27120ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=27120ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=27120ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=27120ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27120ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27120ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=27120ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=27120ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27120ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=27120ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=27120ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27120ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27120ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27120ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27120ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27120ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27140ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27140ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27140ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27140ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27140ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27140ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27140ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27140ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27140ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27140ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=27140ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27140ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=27140ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=27140ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=27140ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=27140ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27140ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=27140ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=27140ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27140ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=27140ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27140ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27140ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27140ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27140ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27140ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27160ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27160ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27160ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27160ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27160ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27160ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27160ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27160ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27160ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27160ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=27160ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27160ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=27160ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=27160ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=27160ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27160ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27160ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=27160ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=27160ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27160ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=27160ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=27160ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27160ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27160ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27160ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27160ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27160ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27160ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27180ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27180ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27180ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27180ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27180ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27180ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27180ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27180ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27180ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=27180ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27180ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=27180ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=27180ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=27180ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=27180ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27180ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=27180ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=27180ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27180ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=27180ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27180ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27180ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27180ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27180ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27200ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27200ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27200ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27200ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27200ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27200ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27200ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27200ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27200ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27200ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=27200ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27200ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=27200ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=27200ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=27200ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27200ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27200ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=27200ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=27200ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27200ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=27200ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=27200ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27200ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27200ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27200ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27200ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27200ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27200ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27220ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27220ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27220ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27220ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27220ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27220ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27220ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27220ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27220ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=27220ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27220ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=27220ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=27220ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=27220ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=27220ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27220ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=27220ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=27220ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27220ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=27220ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27220ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27220ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27220ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27220ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27240ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27240ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27240ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27240ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27240ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27240ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27240ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27240ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27240ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=27240ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27240ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=27240ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=27240ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=27240ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27240ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27240ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=27240ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=27240ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27240ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=27240ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=27240ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27240ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27240ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27240ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27240ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27240ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27260ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27260ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27260ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27260ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27260ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27260ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27260ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27260ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27260ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27260ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=27260ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27260ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=27260ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=27260ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=27260ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=27260ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27260ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=27260ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=27260ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27260ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=27260ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27260ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27260ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27260ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27260ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27260ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27280ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27280ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27280ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27280ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27280ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27280ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27280ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27280ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27280ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=27280ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27280ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=27280ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=27280ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=27280ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27280ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27280ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=27280ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=27280ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27280ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=27280ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=27280ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27280ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27280ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27280ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27280ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27280ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27300ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27300ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27300ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27300ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27300ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27300ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27300ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27300ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27300ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=27300ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27300ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=27300ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=27300ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=27300ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=27300ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27300ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=27300ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=27300ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27300ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=27300ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27300ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27300ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27300ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27300ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27320ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27320ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27320ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27320ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27320ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27320ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27320ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27320ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27320ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=27320ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27320ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=27320ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=27320ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=27320ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27320ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27320ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=27320ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=27320ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27320ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=27320ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=27320ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27320ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27320ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27320ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27320ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27320ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27340ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27340ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27340ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27340ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27340ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27340ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27340ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27340ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27340ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27340ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=27340ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27340ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=27340ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=27340ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=27340ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=27340ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27340ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=27340ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=27340ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27340ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=27340ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27340ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27340ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27340ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27340ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27340ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27360ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27360ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27360ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27360ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27360ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27360ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27360ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27360ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27360ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=27360ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27360ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=27360ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=27360ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=27360ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27360ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27360ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=27360ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=27360ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27360ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=27360ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=27360ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27360ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27360ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27360ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27360ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27360ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27380ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27380ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27380ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27380ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27380ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27380ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27380ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27380ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27380ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27380ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=27380ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27380ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=27380ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=27380ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=27380ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=27380ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27380ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=27380ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=27380ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27380ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=27380ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27380ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27380ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27380ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27380ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27380ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27400ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27400ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27400ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27400ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27400ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27400ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27400ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27400ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27400ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=27400ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27400ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=27400ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=27400ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=27400ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27400ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27400ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=27400ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=27400ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27400ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=27400ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=27400ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27400ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27400ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27400ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27400ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27400ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27420ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27420ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27420ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27420ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27420ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27420ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27420ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27420ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27420ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=27420ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27420ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=27420ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=27420ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=27420ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=27420ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27420ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=27420ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=27420ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27420ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=27420ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27420ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27420ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27420ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27420ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27440ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27440ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27440ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27440ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27440ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27440ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27440ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27440ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27440ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=27440ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27440ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=27440ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=27440ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=27440ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27440ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27440ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=27440ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=27440ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27440ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=27440ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=27440ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27440ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27440ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27440ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27440ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27440ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27460ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27460ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27460ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27460ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27460ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27460ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27460ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27460ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27460ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=27460ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27460ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=27460ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=27460ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=27460ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=27460ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27460ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=27460ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=27460ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27460ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=27460ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27460ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27460ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27460ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27460ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27480ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27480ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27480ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27480ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27480ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27480ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27480ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27480ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27480ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=27480ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27480ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=27480ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=27480ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=27480ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27480ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27480ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=27480ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=27480ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27480ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=27480ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=27480ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27480ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27480ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27480ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27480ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27480ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27500ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27500ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27500ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27500ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27500ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27500ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27500ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27500ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27500ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27500ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=27500ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27500ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=27500ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=27500ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=27500ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=27500ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27500ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=27500ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=27500ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27500ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=27500ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27500ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27500ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27500ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27500ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27500ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27520ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27520ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27520ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27520ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27520ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27520ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27520ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27520ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27520ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=27520ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27520ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=27520ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=27520ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=27520ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27520ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27520ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=27520ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=27520ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27520ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=27520ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=27520ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27520ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27520ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27520ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27520ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27520ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27540ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27540ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27540ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27540ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27540ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27540ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27540ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27540ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27540ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=27540ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27540ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=27540ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=27540ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=27540ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=27540ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27540ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=27540ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=27540ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27540ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=27540ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27540ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27540ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27540ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27540ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27560ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27560ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27560ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27560ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27560ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27560ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27560ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27560ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27560ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=27560ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27560ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=27560ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=27560ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=27560ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27560ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27560ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=27560ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=27560ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27560ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=27560ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=27560ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27560ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27560ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27560ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27560ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27560ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27580ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27580ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27580ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27580ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27580ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27580ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27580ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27580ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27580ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=27580ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27580ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=27580ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=27580ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=27580ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=27580ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27580ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=27580ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=27580ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27580ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=27580ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27580ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27580ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27580ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27580ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27600ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27600ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27600ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27600ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27600ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27600ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27600ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27600ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27600ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=27600ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27600ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=27600ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=27600ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=27600ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27600ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27600ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=27600ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=27600ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27600ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=27600ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=27600ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27600ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27600ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27600ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27600ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27600ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27620ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27620ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27620ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27620ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27620ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27620ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27620ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27620ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27620ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=27620ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27620ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=27620ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=27620ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=27620ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=27620ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27620ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=27620ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=27620ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27620ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=27620ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27620ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27620ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27620ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27620ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27640ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27640ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27640ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27640ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27640ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27640ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27640ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27640ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27640ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=27640ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27640ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=27640ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=27640ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=27640ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27640ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27640ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=27640ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=27640ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27640ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=27640ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=27640ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27640ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27640ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27640ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27640ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27640ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27660ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27660ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27660ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27660ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27660ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27660ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27660ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27660ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27660ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=27660ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27660ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=27660ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=27660ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=27660ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=27660ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27660ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=27660ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=27660ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27660ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=27660ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27660ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27660ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27660ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27660ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27680ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27680ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27680ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27680ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27680ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27680ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27680ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27680ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27680ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=27680ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27680ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=27680ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=27680ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=27680ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27680ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27680ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=27680ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=27680ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27680ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=27680ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=27680ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27680ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27680ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27680ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27680ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27680ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27700ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27700ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27700ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27700ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27700ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27700ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27700ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27700ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27700ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=27700ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27700ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=27700ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=27700ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=27700ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=27700ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27700ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=27700ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=27700ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27700ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=27700ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27700ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27700ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27700ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27700ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27720ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27720ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27720ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27720ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27720ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27720ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27720ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27720ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27720ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=27720ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27720ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=27720ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=27720ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=27720ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27720ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27720ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=27720ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=27720ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27720ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=27720ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=27720ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27720ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27720ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27720ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27720ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27720ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27740ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27740ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27740ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27740ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27740ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27740ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27740ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27740ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27740ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=27740ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27740ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=27740ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=27740ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=27740ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=27740ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27740ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=27740ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=27740ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27740ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=27740ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27740ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27740ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27740ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27740ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27760ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27760ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27760ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27760ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27760ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27760ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27760ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27760ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27760ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=27760ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27760ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=27760ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=27760ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=27760ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27760ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27760ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=27760ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=27760ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27760ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=27760ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=27760ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27760ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27760ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27760ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27760ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27760ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27780ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27780ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27780ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27780ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27780ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27780ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27780ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27780ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27780ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=27780ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27780ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=27780ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=27780ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=27780ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=27780ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27780ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=27780ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=27780ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27780ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=27780ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27780ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27780ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27780ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27780ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27800ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27800ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27800ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27800ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27800ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27800ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27800ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27800ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27800ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=27800ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27800ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=27800ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=27800ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=27800ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27800ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27800ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=27800ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=27800ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27800ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=27800ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=27800ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27800ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27800ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27800ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27800ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27800ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27820ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27820ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27820ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27820ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27820ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27820ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27820ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27820ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27820ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=27820ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27820ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=27820ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=27820ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=27820ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=27820ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27820ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=27820ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=27820ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27820ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=27820ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27820ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27820ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27820ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27820ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27840ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27840ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27840ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27840ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27840ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27840ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27840ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27840ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27840ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=27840ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27840ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=27840ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=27840ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=27840ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27840ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27840ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=27840ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=27840ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27840ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=27840ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=27840ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27840ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27840ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27840ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27840ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27840ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27860ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27860ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27860ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27860ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27860ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27860ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27860ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27860ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27860ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=27860ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27860ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=27860ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=27860ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=27860ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=27860ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27860ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=27860ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=27860ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27860ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=27860ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27860ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27860ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27860ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27860ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27880ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27880ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27880ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27880ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27880ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27880ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27880ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27880ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27880ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=27880ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27880ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=27880ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=27880ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=27880ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27880ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27880ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=27880ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=27880ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27880ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=27880ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=27880ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27880ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27880ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27880ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27880ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27880ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27900ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27900ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27900ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27900ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27900ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27900ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27900ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27900ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27900ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=27900ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27900ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=27900ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=27900ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=27900ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=27900ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27900ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=27900ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=27900ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27900ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=27900ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27900ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27900ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27900ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27900ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27920ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27920ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27920ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27920ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27920ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27920ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27920ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27920ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27920ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=27920ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27920ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=27920ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=27920ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=27920ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27920ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27920ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=27920ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=27920ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27920ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=27920ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=27920ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27920ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27920ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27920ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27920ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27920ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27940ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27940ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27940ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27940ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27940ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27940ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27940ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27940ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27940ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27940ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=27940ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27940ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=27940ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=27940ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=27940ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=27940ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27940ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=27940ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=27940ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27940ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=27940ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27940ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27940ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27940ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27940ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27940ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27960ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27960ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27960ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27960ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27960ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27960ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27960ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27960ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27960ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=27960ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27960ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=27960ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=27960ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=27960ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27960ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27960ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=27960ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=27960ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27960ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=27960ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=27960ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27960ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27960ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27960ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27960ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=27960ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=27980ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=27980ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=27980ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=27980ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=27980ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27980ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=27980ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27980ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27980ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=27980ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=27980ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=27980ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=27980ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=27980ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=27980ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=27980ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27980ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=27980ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=27980ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=27980ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=27980ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=27980ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=27980ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=27980ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=27980ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=27980ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28000ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28000ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28000ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28000ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28000ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28000ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28000ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28000ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28000ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=28000ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28000ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=28000ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=28000ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=28000ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28000ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28000ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=28000ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=28000ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28000ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=28000ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=28000ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28000ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28000ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28000ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28000ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28000ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28020ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28020ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28020ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28020ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28020ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28020ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28020ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28020ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28020ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28020ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=28020ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28020ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=28020ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=28020ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=28020ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=28020ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28020ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=28020ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=28020ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28020ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=28020ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28020ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28020ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28020ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28020ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28020ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28040ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28040ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28040ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28040ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28040ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28040ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28040ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28040ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28040ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=28040ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28040ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=28040ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=28040ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=28040ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28040ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28040ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=28040ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=28040ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28040ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=28040ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=28040ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28040ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28040ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28040ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28040ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28040ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28060ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28060ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28060ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28060ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28060ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28060ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28060ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28060ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28060ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28060ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=28060ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28060ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=28060ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=28060ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=28060ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=28060ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28060ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=28060ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=28060ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28060ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=28060ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28060ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28060ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28060ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28060ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28060ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28080ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28080ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28080ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28080ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28080ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28080ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28080ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28080ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28080ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=28080ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28080ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=28080ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=28080ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=28080ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28080ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28080ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=28080ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=28080ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28080ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=28080ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=28080ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28080ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28080ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28080ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28080ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28080ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28100ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28100ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28100ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28100ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28100ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28100ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28100ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28100ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28100ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=28100ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28100ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=28100ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=28100ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=28100ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=28100ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28100ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=28100ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=28100ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28100ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=28100ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28100ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28100ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28100ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28100ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28120ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28120ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28120ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28120ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28120ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28120ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28120ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28120ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28120ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=28120ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28120ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=28120ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=28120ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=28120ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28120ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28120ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=28120ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=28120ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28120ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=28120ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=28120ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28120ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28120ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28120ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28120ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28120ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28140ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28140ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28140ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28140ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28140ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28140ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28140ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28140ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28140ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28140ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=28140ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28140ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=28140ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=28140ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=28140ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=28140ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28140ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=28140ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=28140ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28140ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=28140ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28140ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28140ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28140ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28140ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28140ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28160ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28160ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28160ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28160ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28160ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28160ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28160ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28160ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28160ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28160ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=28160ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28160ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=28160ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=28160ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=28160ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28160ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28160ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=28160ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=28160ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28160ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=28160ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=28160ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28160ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28160ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28160ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28160ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28160ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28160ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28180ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28180ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28180ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28180ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28180ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28180ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28180ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28180ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28180ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=28180ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28180ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=28180ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=28180ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=28180ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=28180ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28180ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=28180ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=28180ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28180ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=28180ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28180ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28180ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28180ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28180ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28200ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28200ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28200ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28200ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28200ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28200ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28200ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28200ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28200ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28200ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=28200ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28200ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=28200ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=28200ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=28200ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28200ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28200ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=28200ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=28200ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28200ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=28200ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=28200ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28200ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28200ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28200ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28200ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28200ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28200ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28220ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28220ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28220ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28220ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28220ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28220ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28220ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28220ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28220ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=28220ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28220ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=28220ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=28220ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=28220ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=28220ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28220ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=28220ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=28220ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28220ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=28220ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28220ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28220ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28220ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28220ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28240ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28240ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28240ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28240ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28240ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28240ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28240ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28240ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28240ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=28240ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28240ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=28240ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=28240ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=28240ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28240ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28240ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=28240ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=28240ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28240ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=28240ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=28240ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28240ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28240ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28240ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28240ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28240ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28260ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28260ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28260ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28260ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28260ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28260ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28260ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28260ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28260ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28260ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=28260ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28260ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=28260ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=28260ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=28260ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=28260ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28260ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=28260ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=28260ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28260ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=28260ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28260ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28260ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28260ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28260ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28260ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28280ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28280ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28280ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28280ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28280ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28280ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28280ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28280ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28280ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=28280ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=28280ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28280ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=28280ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=28280ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=28280ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28280ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28280ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=28280ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28280ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=28280ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=28280ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28280ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28280ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28280ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28280ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=28280ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28280ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28300ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28300ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28300ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28300ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28300ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28300ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28300ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28300ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28300ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=28300ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28300ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=28300ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=28300ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=28300ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=28300ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28300ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=28300ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=28300ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28300ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=28300ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28300ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28300ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28300ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28300ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28320ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28320ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28320ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28320ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28320ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28320ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28320ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28320ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28320ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=28320ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28320ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=28320ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=28320ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=28320ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28320ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28320ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=28320ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28320ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=28320ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=28320ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28320ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=28320ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28320ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28320ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28320ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28320ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28340ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28340ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28340ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28340ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28340ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28340ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28340ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28340ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28340ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28340ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=28340ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28340ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=28340ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=28340ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=28340ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=28340ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28340ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=28340ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=28340ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28340ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=28340ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28340ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28340ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28340ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28340ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28340ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28360ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28360ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28360ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28360ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28360ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28360ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28360ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28360ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28360ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=28360ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28360ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=28360ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=28360ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=28360ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28360ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28360ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=28360ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=28360ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28360ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=28360ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=28360ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28360ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28360ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28360ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28360ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28360ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28380ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28380ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28380ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28380ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28380ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28380ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28380ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28380ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28380ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28380ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=28380ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28380ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=28380ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=28380ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=28380ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=28380ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28380ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=28380ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=28380ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28380ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=28380ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28380ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28380ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28380ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28380ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28380ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28400ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28400ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28400ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28400ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28400ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28400ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28400ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28400ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28400ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=28400ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28400ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=28400ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=28400ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=28400ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28400ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28400ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=28400ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=28400ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28400ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=28400ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=28400ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28400ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28400ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28400ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28400ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28400ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28420ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28420ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28420ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28420ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28420ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28420ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28420ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28420ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28420ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=28420ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28420ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=28420ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=28420ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=28420ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=28420ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28420ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=28420ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=28420ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28420ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=28420ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28420ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28420ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28420ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28420ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28420ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28440ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28440ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28440ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28440ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28440ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28440ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28440ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28440ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28440ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=28440ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28440ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=28440ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=28440ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=28440ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28440ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28440ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=28440ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=28440ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28440ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=28440ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=28440ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28440ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28440ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28440ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28440ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28440ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28460ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28460ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28460ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28460ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28460ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28460ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28460ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28460ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28460ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=28460ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28460ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=28460ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=28460ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=28460ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=28460ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28460ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=28460ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=28460ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28460ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=28460ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28460ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28460ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28460ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28460ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28480ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28480ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28480ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28480ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28480ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28480ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28480ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28480ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28480ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=28480ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28480ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=28480ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=28480ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=28480ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28480ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28480ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=28480ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=28480ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28480ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=28480ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=28480ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28480ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28480ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28480ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28480ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28480ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28500ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28500ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28500ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28500ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28500ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28500ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28500ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28500ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28500ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28500ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=28500ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28500ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=28500ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=28500ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=28500ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=28500ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28500ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=28500ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=28500ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28500ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=28500ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28500ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28500ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28500ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28500ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28500ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28520ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28520ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28520ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28520ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28520ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28520ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28520ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28520ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28520ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=28520ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28520ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=28520ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=28520ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=28520ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28520ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28520ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=28520ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=28520ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28520ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=28520ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=28520ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28520ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28520ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28520ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28520ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28520ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28520ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28540ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28540ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28540ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28540ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28540ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28540ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28540ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28540ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28540ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=28540ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28540ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=28540ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=28540ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=28540ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=28540ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28540ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=28540ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=28540ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28540ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=28540ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28540ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28540ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28540ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28540ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28560ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28560ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28560ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28560ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28560ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28560ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28560ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28560ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28560ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=28560ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28560ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=28560ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=28560ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=28560ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28560ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28560ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=28560ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=28560ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28560ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=28560ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=28560ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28560ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28560ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28560ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28560ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28560ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28580ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28580ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28580ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28580ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28580ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28580ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28580ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28580ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28580ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=28580ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28580ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=28580ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=28580ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=28580ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=28580ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28580ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=28580ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=28580ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28580ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=28580ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28580ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28580ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28580ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28580ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28600ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28600ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28600ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28600ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28600ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28600ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28600ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28600ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28600ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=28600ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28600ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=28600ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=28600ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=28600ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28600ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28600ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=28600ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=28600ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28600ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=28600ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=28600ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28600ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28600ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28600ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28600ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28600ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28620ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28620ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28620ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28620ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28620ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28620ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28620ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28620ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28620ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=28620ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28620ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=28620ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=28620ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=28620ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=28620ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28620ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=28620ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=28620ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28620ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=28620ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28620ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28620ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28620ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28620ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28640ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28640ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28640ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28640ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28640ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28640ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28640ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28640ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28640ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=28640ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28640ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=28640ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=28640ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=28640ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28640ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28640ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=28640ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=28640ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28640ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=28640ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=28640ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28640ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28640ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28640ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28640ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28640ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28660ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28660ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28660ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28660ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28660ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28660ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28660ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28660ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28660ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=28660ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28660ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=28660ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=28660ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=28660ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=28660ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28660ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=28660ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=28660ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28660ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=28660ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28660ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28660ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28660ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28660ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28680ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28680ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28680ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28680ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28680ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28680ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28680ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28680ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28680ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=28680ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28680ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=28680ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=28680ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=28680ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28680ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28680ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=28680ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=28680ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28680ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=28680ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=28680ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28680ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28680ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28680ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28680ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28680ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28700ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28700ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28700ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28700ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28700ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28700ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28700ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28700ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28700ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=28700ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28700ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=28700ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=28700ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=28700ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=28700ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28700ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=28700ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=28700ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28700ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=28700ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28700ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28700ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28700ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28700ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28720ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28720ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28720ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28720ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28720ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28720ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28720ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28720ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28720ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=28720ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28720ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=28720ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=28720ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=28720ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28720ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28720ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=28720ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=28720ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28720ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=28720ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=28720ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28720ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28720ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28720ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28720ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28720ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28740ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28740ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28740ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28740ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28740ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28740ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28740ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=28740ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28740ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=28740ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28740ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28740ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=28740ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=28740ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=28740ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28740ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=28740ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=28740ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28740ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=28740ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28740ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28740ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28740ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28740ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28740ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28760ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28760ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28760ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28760ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28760ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28760ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28760ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28760ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28760ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=28760ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=28760ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28760ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=28760ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=28760ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28760ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=28760ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=28760ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28760ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=28760ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28760ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28760ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=28760ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28760ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28760ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28780ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28780ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28780ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28780ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28780ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=28780ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28780ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=28780ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28780ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28780ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=28780ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28780ms
fork_0->>philosopher_4: {:fork_granted, :fork_0}
Note over fork_0,philosopher_4: t=28780ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=28780ms
fork_0->>philosopher_0: {:fork_denied, :fork_0}
Note over fork_0,philosopher_0: t=28780ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=28780ms
philosopher_4->>philosopher_4: {:mumble, "I'm full!"}
Note over philosopher_4,philosopher_4: t=28780ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28780ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28780ms
philosopher_4->>fork_0: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=28780ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=28780ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=28780ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28780ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28780ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28800ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28800ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28800ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28800ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28800ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28800ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28800ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28800ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28800ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=28800ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28800ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=28800ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=28800ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=28800ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=28800ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28800ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=28800ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=28800ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=28800ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=28800ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28800ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28800ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=28800ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28800ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=28800ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28820ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28820ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28820ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28820ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28820ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28820ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28820ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28820ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28820ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28820ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28820ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=28820ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=28820ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=28820ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28820ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=28820ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=28820ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28820ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28820ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=28820ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28820ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=28820ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=28820ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28820ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28820ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28820ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=28820ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28840ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28840ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28840ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28840ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28840ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28840ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28840ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28840ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28840ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28840ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=28840ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28840ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28840ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=28840ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=28840ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28840ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=28840ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28840ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=28840ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=28840ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28840ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=28840ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28840ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=28840ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=28840ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28840ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=28840ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28860ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28860ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28860ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28860ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28860ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28860ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28860ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28860ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28860ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=28860ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28860ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=28860ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=28860ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=28860ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28860ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=28860ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=28860ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28860ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=28860ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=28860ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28860ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28860ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28860ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28860ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28880ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28880ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28880ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28880ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28880ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28880ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28880ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28880ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28880ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=28880ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=28880ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=28880ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=28880ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28880ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=28880ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=28880ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=28880ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28880ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=28880ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=28880ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=28880ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28880ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=28880ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28880ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28880ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=28880ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=28880ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28900ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28900ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28900ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28900ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28900ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28900ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28900ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28900ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28900ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28900ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=28900ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=28900ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28900ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=28900ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=28900ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28900ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=28900ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28900ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=28900ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28900ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=28900ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28900ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=28900ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28900ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28900ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28900ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28920ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28920ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28920ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28920ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28920ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=28920ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28920ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28920ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28920ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28920ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28920ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=28920ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28920ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=28920ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=28920ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28920ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=28920ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=28920ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28920ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28920ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=28920ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=28920ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28920ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28920ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28920ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28920ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28940ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28940ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28940ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28940ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28940ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28940ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28940ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28940ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28940ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28940ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=28940ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28940ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=28940ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=28940ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=28940ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28940ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=28940ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=28940ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28940ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28940ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28940ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=28940ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28940ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28940ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=28940ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28940ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28940ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28940ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28960ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28960ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28960ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28960ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28960ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=28960ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=28960ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28960ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28960ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28960ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28960ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=28960ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28960ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=28960ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=28960ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=28960ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=28960ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28960ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28960ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=28960ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=28960ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28960ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=28960ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28960ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28960ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28960ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=28980ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=28980ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=28980ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=28980ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=28980ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28980ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28980ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=28980ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=28980ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28980ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=28980ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=28980ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=28980ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=28980ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28980ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=28980ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=28980ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28980ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=28980ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=28980ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=28980ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=28980ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=28980ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=28980ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=28980ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=28980ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=28980ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=28980ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29000ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29000ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29000ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29000ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29000ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29000ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29000ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29000ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29000ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=29000ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29000ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=29000ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=29000ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29000ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=29000ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=29000ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29000ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=29000ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=29000ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=29000ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=29000ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=29000ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29000ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29000ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29000ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29000ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29020ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29020ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29020ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29020ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29020ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29020ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29020ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29020ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29020ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29020ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=29020ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=29020ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29020ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=29020ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=29020ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29020ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29020ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29020ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=29020ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=29020ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29020ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=29020ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=29020ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29020ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=29020ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29020ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29020ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29020ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29040ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29040ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29040ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29040ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29040ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29040ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29040ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29040ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29040ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=29040ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=29040ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29040ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=29040ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29040ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=29040ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29040ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=29040ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=29040ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=29040ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=29040ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=29040ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29040ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29040ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=29040ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29040ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29040ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29040ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29060ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29060ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29060ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29060ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29060ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29060ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29060ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29060ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=29060ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29060ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29060ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=29060ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29060ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=29060ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=29060ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=29060ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29060ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29060ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=29060ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=29060ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29060ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=29060ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=29060ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29060ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29060ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29060ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29080ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29080ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29080ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29080ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29080ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29080ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29080ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=29080ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29080ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=29080ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29080ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29080ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=29080ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=29080ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29080ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=29080ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29080ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=29080ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=29080ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=29080ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=29080ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=29080ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29080ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29080ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29080ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=29080ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29080ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29100ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29100ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29100ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29100ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29100ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29100ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29100ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29100ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29100ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29100ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29100ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=29100ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=29100ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=29100ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29100ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=29100ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=29100ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=29100ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=29100ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29100ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=29100ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29100ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=29100ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29100ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29100ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29100ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29120ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29120ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29120ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29120ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29120ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29120ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29120ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29120ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29120ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29120ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29120ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29120ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=29120ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=29120ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=29120ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=29120ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=29120ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29120ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29120ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=29120ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=29120ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=29120ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29120ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29120ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=29120ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29120ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29120ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29120ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29140ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29140ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29140ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29140ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29140ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29140ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29140ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29140ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=29140ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29140ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29140ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=29140ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=29140ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29140ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=29140ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=29140ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=29140ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29140ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=29140ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29140ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=29140ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=29140ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=29140ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=29140ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29140ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29140ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=29140ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29140ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29160ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29160ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29160ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29160ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29160ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29160ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29160ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29160ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29160ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=29160ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29160ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29160ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=29160ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=29160ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29160ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=29160ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=29160ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29160ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=29160ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=29160ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=29160ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=29160ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29160ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29160ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29160ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29160ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29180ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29180ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29180ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29180ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29180ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29180ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29180ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29180ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29180ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29180ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=29180ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=29180ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=29180ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29180ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=29180ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29180ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=29180ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29180ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=29180ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=29180ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=29180ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=29180ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29180ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=29180ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29180ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=29180ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29180ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29180ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29200ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29200ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29200ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29200ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29200ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29200ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29200ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29200ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29200ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29200ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29200ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29200ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=29200ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=29200ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=29200ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=29200ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=29200ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=29200ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29200ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=29200ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29200ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=29200ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=29200ms
fork_0->>philosopher_4: {:fork_granted, :fork_0}
Note over fork_0,philosopher_4: t=29200ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=29200ms
philosopher_4->>philosopher_4: {:mumble, "I'm full!"}
Note over philosopher_4,philosopher_4: t=29200ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29200ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29200ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=29200ms
philosopher_4->>fork_0: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=29200ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29220ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29220ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29220ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29220ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29220ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29220ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29220ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29220ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29220ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29220ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=29220ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=29220ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=29220ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=29220ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29220ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29220ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29220ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29220ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=29220ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=29220ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=29220ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29220ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29220ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=29220ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=29220ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29220ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29220ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29220ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29240ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29240ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29240ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29240ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29240ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29240ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29240ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29240ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29240ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29240ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29240ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=29240ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29240ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=29240ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=29240ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=29240ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=29240ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=29240ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29240ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=29240ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=29240ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29240ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=29240ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=29240ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29240ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29240ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29240ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=29240ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29260ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29260ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29260ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29260ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29260ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29260ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29260ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29260ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29260ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29260ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=29260ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=29260ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=29260ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=29260ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=29260ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29260ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29260ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=29260ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=29260ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29260ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=29260ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=29260ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29260ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29260ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29260ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29260ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29280ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29280ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29280ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29280ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29280ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29280ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29280ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29280ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=29280ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29280ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29280ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=29280ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=29280ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29280ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=29280ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=29280ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=29280ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=29280ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29280ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=29280ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29280ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=29280ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=29280ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=29280ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29280ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29280ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=29280ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29280ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29300ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29300ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29300ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29300ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29300ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29300ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29300ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29300ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29300ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=29300ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=29300ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29300ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=29300ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=29300ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29300ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29300ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29300ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=29300ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=29300ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=29300ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=29300ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29300ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29300ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29300ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=29300ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29300ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29300ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29320ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29320ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29320ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29320ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29320ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29320ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29320ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29320ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=29320ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29320ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=29320ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29320ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=29320ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=29320ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=29320ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29320ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=29320ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=29320ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=29320ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=29320ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=29320ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29320ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29320ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=29320ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29320ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=29320ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29320ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29340ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29340ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29340ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29340ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29340ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29340ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29340ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29340ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29340ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29340ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=29340ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=29340ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=29340ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29340ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=29340ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=29340ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29340ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29340ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=29340ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=29340ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29340ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=29340ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=29340ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29340ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29340ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29340ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29360ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29360ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29360ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29360ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29360ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29360ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29360ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29360ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29360ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=29360ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29360ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=29360ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=29360ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=29360ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29360ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=29360ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=29360ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29360ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=29360ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=29360ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=29360ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=29360ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29360ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29360ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=29360ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29360ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29360ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29380ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29380ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29380ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29380ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29380ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29380ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29380ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29380ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29380ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29380ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=29380ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=29380ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29380ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=29380ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=29380ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=29380ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29380ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29380ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=29380ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=29380ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29380ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=29380ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=29380ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29380ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29380ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29380ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29400ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29400ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29400ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29400ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29400ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29400ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29400ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29400ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=29400ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29400ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29400ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=29400ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=29400ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29400ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29400ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=29400ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29400ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29400ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=29400ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=29400ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=29400ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=29400ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=29400ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29400ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29400ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29400ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29400ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29400ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29420ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29420ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29420ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29420ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29420ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29420ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29420ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29420ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29420ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29420ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=29420ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=29420ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29420ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=29420ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=29420ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=29420ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29420ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29420ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=29420ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=29420ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=29420ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=29420ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=29420ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29420ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29420ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29420ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29420ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=29420ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29440ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29440ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29440ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29440ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29440ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29440ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29440ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29440ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29440ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=29440ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=29440ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=29440ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29440ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29440ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=29440ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29440ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=29440ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29440ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=29440ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=29440ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29440ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=29440ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29440ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=29440ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29440ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29440ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29440ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29460ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29460ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29460ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29460ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29460ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29460ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29460ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29460ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29460ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=29460ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29460ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29460ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=29460ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=29460ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=29460ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29460ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=29460ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=29460ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=29460ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=29460ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=29460ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29460ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=29460ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29460ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=29460ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29460ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29460ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=29460ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29480ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29480ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29480ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29480ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29480ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29480ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29480ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29480ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29480ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29480ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=29480ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29480ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=29480ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29480ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29480ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=29480ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29480ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=29480ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=29480ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=29480ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=29480ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=29480ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29480ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=29480ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29480ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29480ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29480ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29480ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29500ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29500ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29500ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29500ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29500ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29500ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29500ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29500ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29500ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29500ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29500ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=29500ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29500ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=29500ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=29500ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=29500ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=29500ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=29500ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=29500ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=29500ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=29500ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29500ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=29500ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29500ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29500ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=29500ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29500ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=29500ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29520ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29520ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29520ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29520ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29520ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29520ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=29520ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29520ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29520ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29520ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29520ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=29520ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=29520ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=29520ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29520ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=29520ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=29520ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29520ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29520ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=29520ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=29520ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29520ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29520ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29520ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=29520ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=29520ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29520ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29520ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29540ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29540ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29540ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29540ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29540ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29540ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29540ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29540ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29540ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29540ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29540ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=29540ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=29540ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=29540ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29540ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=29540ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29540ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=29540ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=29540ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=29540ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=29540ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29540ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=29540ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29540ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=29540ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29540ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29540ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29540ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29560ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29560ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29560ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29560ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29560ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29560ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=29560ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29560ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29560ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29560ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29560ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29560ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=29560ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=29560ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=29560ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29560ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=29560ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=29560ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29560ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=29560ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29560ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29560ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=29560ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=29560ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29560ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=29560ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29560ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29560ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29580ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29580ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29580ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29580ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29580ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29580ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29580ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29580ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29580ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29580ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=29580ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=29580ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=29580ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29580ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29580ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=29580ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29580ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=29580ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=29580ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=29580ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=29580ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29580ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29580ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=29580ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29580ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29580ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29580ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29600ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29600ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29600ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29600ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29600ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29600ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29600ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=29600ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29600ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29600ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29600ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=29600ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=29600ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29600ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=29600ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29600ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=29600ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29600ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=29600ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=29600ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=29600ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=29600ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29600ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29600ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29600ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29600ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29620ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29620ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29620ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29620ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29620ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29620ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29620ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29620ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=29620ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29620ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29620ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29620ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=29620ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29620ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=29620ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29620ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29620ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=29620ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=29620ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=29620ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=29620ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=29620ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=29620ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29620ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29620ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29620ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29620ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29620ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29640ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29640ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29640ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29640ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29640ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29640ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=29640ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29640ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29640ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29640ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29640ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29640ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=29640ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=29640ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=29640ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=29640ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29640ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=29640ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29640ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=29640ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=29640ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=29640ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29640ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=29640ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29640ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29640ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29640ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29640ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29660ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29660ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29660ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29660ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29660ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29660ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29660ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29660ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29660ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29660ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=29660ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=29660ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29660ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=29660ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=29660ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29660ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=29660ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=29660ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=29660ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=29660ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=29660ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29660ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29660ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29660ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29660ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29680ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29680ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29680ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29680ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29680ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29680ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29680ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=29680ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29680ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29680ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29680ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=29680ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=29680ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=29680ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29680ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=29680ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29680ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=29680ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29680ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=29680ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=29680ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=29680ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=29680ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29680ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29680ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29680ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29680ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=29680ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29700ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29700ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29700ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29700ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29700ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29700ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29700ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29700ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29700ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29700ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29700ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=29700ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29700ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=29700ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=29700ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=29700ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=29700ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=29700ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29700ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=29700ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29700ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=29700ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=29700ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29700ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29700ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29700ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29720ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29720ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29720ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29720ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29720ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29720ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29720ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29720ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29720ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29720ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29720ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=29720ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=29720ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=29720ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29720ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=29720ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=29720ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=29720ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=29720ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29720ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29720ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=29720ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=29720ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29720ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29720ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29720ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29740ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29740ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29740ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29740ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29740ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29740ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29740ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29740ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29740ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29740ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29740ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=29740ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=29740ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=29740ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=29740ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29740ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29740ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29740ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=29740ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=29740ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=29740ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=29740ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=29740ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29740ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29740ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29740ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29740ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29740ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29760ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29760ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29760ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29760ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29760ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29760ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29760ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29760ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29760ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=29760ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29760ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=29760ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29760ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=29760ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=29760ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29760ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29760ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=29760ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=29760ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=29760ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=29760ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=29760ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=29760ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29760ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29760ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29760ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29760ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29760ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29780ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29780ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29780ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29780ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29780ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29780ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29780ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29780ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29780ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29780ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=29780ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=29780ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=29780ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29780ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29780ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=29780ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=29780ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29780ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=29780ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=29780ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=29780ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=29780ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29780ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29780ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29780ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29780ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29800ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29800ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29800ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29800ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29800ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=29800ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29800ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29800ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29800ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29800ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29800ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=29800ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=29800ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=29800ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29800ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29800ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29800ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=29800ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=29800ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=29800ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=29800ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29800ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=29800ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29800ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29800ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29800ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29800ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29820ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29820ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29820ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29820ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29820ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29820ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29820ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29820ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=29820ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=29820ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29820ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=29820ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=29820ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29820ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=29820ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29820ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=29820ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=29820ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=29820ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29820ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29820ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29820ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=29820ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29820ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29820ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29840ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29840ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29840ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29840ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29840ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29840ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=29840ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=29840ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29840ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29840ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29840ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29840ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=29840ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29840ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=29840ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=29840ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29840ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=29840ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=29840ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29840ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=29840ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29840ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=29840ms
fork_3->>philosopher_3: {:fork_denied, :fork_3}
Note over fork_3,philosopher_3: t=29840ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=29840ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29840ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29840ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29840ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29860ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29860ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29860ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29860ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29860ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=29860ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29860ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29860ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29860ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29860ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29860ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=29860ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=29860ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29860ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=29860ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=29860ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=29860ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=29860ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29860ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=29860ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29860ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=29860ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29860ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29860ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29860ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29880ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29880ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29880ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29880ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29880ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29880ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29880ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29880ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29880ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=29880ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29880ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29880ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=29880ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=29880ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=29880ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29880ms
fork_3->>philosopher_2: {:fork_granted, :fork_3}
Note over fork_3,philosopher_2: t=29880ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=29880ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=29880ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=29880ms
philosopher_2->>philosopher_2: {:mumble, "I'm full!"}
Note over philosopher_2,philosopher_2: t=29880ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=29880ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29880ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=29880ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29880ms
philosopher_2->>fork_3: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=29880ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29880ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29880ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29900ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29900ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29900ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29900ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29900ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29900ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29900ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29900ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29900ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=29900ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29900ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29900ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=29900ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29900ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29900ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29900ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=29900ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=29900ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=29900ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=29900ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=29900ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=29900ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29900ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29900ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29900ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=29900ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29900ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29900ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29920ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29920ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29920ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29920ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29920ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29920ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=29920ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29920ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29920ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29920ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29920ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29920ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=29920ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=29920ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=29920ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29920ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29920ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=29920ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=29920ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=29920ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29920ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=29920ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29920ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29920ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=29920ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29920ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29920ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29920ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29940ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29940ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29940ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29940ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29940ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29940ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29940ms
fork_4->>philosopher_3: {:fork_granted, :fork_4}
Note over fork_4,philosopher_3: t=29940ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29940ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29940ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29940ms
philosopher_3->>fork_3: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29940ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29940ms
fork_2->>philosopher_2: {:fork_granted, :fork_2}
Note over fork_2,philosopher_2: t=29940ms
fork_4->>philosopher_4: {:fork_denied, :fork_4}
Note over fork_4,philosopher_4: t=29940ms
fork_3->>philosopher_3: {:fork_granted, :fork_3}
Note over fork_3,philosopher_3: t=29940ms
fork_2->>philosopher_1: {:fork_denied, :fork_2}
Note over fork_2,philosopher_1: t=29940ms
philosopher_2->>fork_3: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_3: t=29940ms
philosopher_3->>philosopher_3: {:mumble, "I'm full!"}
Note over philosopher_3,philosopher_3: t=29940ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29940ms
philosopher_3->>fork_4: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29940ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=29940ms
fork_3->>philosopher_2: {:fork_denied, :fork_3}
Note over fork_3,philosopher_2: t=29940ms
philosopher_3->>fork_3: {:release_fork, :philosopher_3}
Note over philosopher_3,fork_3: t=29940ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=29940ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29940ms
philosopher_2->>fork_2: {:release_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29940ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29940ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29960ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29960ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29960ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29960ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29960ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29960ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29960ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29960ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=29960ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29960ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=29960ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=29960ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29960ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29960ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=29960ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=29960ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=29960ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29960ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=29960ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=29960ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=29960ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29960ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29960ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29960ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29960ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=29980ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=29980ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29980ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=29980ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=29980ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=29980ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=29980ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29980ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=29980ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29980ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=29980ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=29980ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=29980ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=29980ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=29980ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=29980ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29980ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=29980ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=29980ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=29980ms
fork_1->>philosopher_0: {:fork_granted, :fork_1}
Note over fork_1,philosopher_0: t=29980ms
fork_1->>philosopher_1: {:fork_denied, :fork_1}
Note over fork_1,philosopher_1: t=29980ms
philosopher_0->>philosopher_0: {:mumble, "I'm full!"}
Note over philosopher_0,philosopher_0: t=29980ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=29980ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=29980ms
philosopher_0->>fork_1: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=29980ms
philosopher_1->>philosopher_1: {:start_hungry, :fork_2, :fork_1}
Note over philosopher_1,philosopher_1: t=30000ms
philosopher_2->>philosopher_2: {:start_hungry, :fork_2, :fork_3}
Note over philosopher_2,philosopher_2: t=30000ms
philosopher_0->>philosopher_0: {:start_hungry, :fork_0, :fork_1}
Note over philosopher_0,philosopher_0: t=30000ms
philosopher_3->>philosopher_3: {:start_hungry, :fork_4, :fork_3}
Note over philosopher_3,philosopher_3: t=30000ms
philosopher_4->>philosopher_4: {:start_hungry, :fork_4, :fork_0}
Note over philosopher_4,philosopher_4: t=30000ms
philosopher_1->>fork_2: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=30000ms
philosopher_0->>fork_0: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=30000ms
philosopher_2->>fork_2: {:request_fork, :philosopher_2}
Note over philosopher_2,fork_2: t=30000ms
philosopher_4->>fork_4: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=30000ms
philosopher_3->>fork_4: {:request_fork, :philosopher_3}
Note over philosopher_3,fork_4: t=30000ms
fork_2->>philosopher_1: {:fork_granted, :fork_2}
Note over fork_2,philosopher_1: t=30000ms
fork_2->>philosopher_2: {:fork_denied, :fork_2}
Note over fork_2,philosopher_2: t=30000ms
fork_0->>philosopher_0: {:fork_granted, :fork_0}
Note over fork_0,philosopher_0: t=30000ms
philosopher_1->>fork_1: {:request_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=30000ms
fork_4->>philosopher_4: {:fork_granted, :fork_4}
Note over fork_4,philosopher_4: t=30000ms
philosopher_0->>fork_1: {:request_fork, :philosopher_0}
Note over philosopher_0,fork_1: t=30000ms
fork_4->>philosopher_3: {:fork_denied, :fork_4}
Note over fork_4,philosopher_3: t=30000ms
philosopher_4->>fork_0: {:request_fork, :philosopher_4}
Note over philosopher_4,fork_0: t=30000ms
fork_1->>philosopher_1: {:fork_granted, :fork_1}
Note over fork_1,philosopher_1: t=30000ms
fork_0->>philosopher_4: {:fork_denied, :fork_0}
Note over fork_0,philosopher_4: t=30000ms
fork_1->>philosopher_0: {:fork_denied, :fork_1}
Note over fork_1,philosopher_0: t=30000ms
philosopher_1->>philosopher_1: {:mumble, "I'm full!"}
Note over philosopher_1,philosopher_1: t=30000ms
philosopher_0->>fork_0: {:release_fork, :philosopher_0}
Note over philosopher_0,fork_0: t=30000ms
philosopher_4->>fork_4: {:release_fork, :philosopher_4}
Note over philosopher_4,fork_4: t=30000ms
philosopher_1->>fork_2: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_2: t=30000ms
philosopher_1->>fork_1: {:release_fork, :philosopher_1}
Note over philosopher_1,fork_1: t=30000ms